diff options
Diffstat (limited to 'upstream/fedora-40/man1/perltoc.1')
-rw-r--r-- | upstream/fedora-40/man1/perltoc.1 | 37640 |
1 files changed, 37640 insertions, 0 deletions
diff --git a/upstream/fedora-40/man1/perltoc.1 b/upstream/fedora-40/man1/perltoc.1 new file mode 100644 index 00000000..b253d67d --- /dev/null +++ b/upstream/fedora-40/man1/perltoc.1 @@ -0,0 +1,37640 @@ +.\" -*- mode: troff; coding: utf-8 -*- +.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. +.ie n \{\ +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds C` +. ds C' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is >0, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.\" +.\" Avoid warning from groff about undefined register 'F'. +.de IX +.. +.nr rF 0 +.if \n(.g .if rF .nr rF 1 +.if (\n(rF:(\n(.g==0)) \{\ +. if \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. if !\nF==2 \{\ +. nr % 0 +. nr F 2 +. \} +. \} +.\} +.rr rF +.\" ======================================================================== +.\" +.IX Title "PERLTOC 1" +.TH PERLTOC 1 2024-01-25 "perl v5.38.2" "Perl Programmers Reference Guide" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH NAME +perltoc \- perl documentation table of contents +.SH DESCRIPTION +.IX Header "DESCRIPTION" +This page provides a brief table of contents for the rest of the Perl +documentation set. It is meant to be scanned quickly or grepped +through to locate the proper section you're looking for. +.SH "BASIC DOCUMENTATION" +.IX Header "BASIC DOCUMENTATION" +.SS "perl \- The Perl 5 language interpreter" +.IX Subsection "perl - The Perl 5 language interpreter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "GETTING HELP" 4 +.IX Item "GETTING HELP" +.RS 4 +.IP Overview 4 +.IX Item "Overview" +.IP Tutorials 4 +.IX Item "Tutorials" +.IP "Reference Manual" 4 +.IX Item "Reference Manual" +.IP "Internals and C Language Interface" 4 +.IX Item "Internals and C Language Interface" +.IP History 4 +.IX Item "History" +.IP Miscellaneous 4 +.IX Item "Miscellaneous" +.IP Language-Specific 4 +.IX Item "Language-Specific" +.IP Platform-Specific 4 +.IX Item "Platform-Specific" +.IP "Stubs for Deleted Documents" 4 +.IX Item "Stubs for Deleted Documents" +.RE +.RS 4 +.RE +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AVAILABILITY 4 +.IX Item "AVAILABILITY" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP FILES 4 +.IX Item "FILES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.IP BUGS 4 +.IX Item "BUGS" +.IP NOTES 4 +.IX Item "NOTES" +.PD +.SS "perlintro \- a brief introduction and overview of Perl" +.IX Subsection "perlintro - a brief introduction and overview of Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "What is Perl?" 4 +.IX Item "What is Perl?" +.IP "Running Perl programs" 4 +.IX Item "Running Perl programs" +.IP "Safety net" 4 +.IX Item "Safety net" +.IP "Basic syntax overview" 4 +.IX Item "Basic syntax overview" +.IP "Perl variable types" 4 +.IX Item "Perl variable types" +.PD +Scalars, Arrays, Hashes +.IP "Variable scoping" 4 +.IX Item "Variable scoping" +.PD 0 +.IP "Conditional and looping constructs" 4 +.IX Item "Conditional and looping constructs" +.PD +if, while, for, foreach +.IP "Builtin operators and functions" 4 +.IX Item "Builtin operators and functions" +Arithmetic, Numeric comparison, String comparison, Boolean logic, +Miscellaneous +.IP "Files and I/O" 4 +.IX Item "Files and I/O" +.PD 0 +.IP "Regular expressions" 4 +.IX Item "Regular expressions" +.PD +Simple matching, Simple substitution, More complex regular expressions, +Parentheses for capturing, Other regexp features +.IP "Writing subroutines" 4 +.IX Item "Writing subroutines" +.PD 0 +.IP "OO Perl" 4 +.IX Item "OO Perl" +.IP "Using Perl modules" 4 +.IX Item "Using Perl modules" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlrun \- how to execute the Perl interpreter" +.IX Subsection "perlrun - how to execute the Perl interpreter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "#! and quoting on non-Unix systems" 4 +.IX Xref "hashbang #!" +.IX Item "#! and quoting on non-Unix systems" +.PD +OS/2, MS-DOS, Win95/NT, VMS +.IP "Location of Perl" 4 +.IX Xref "perl, location of interpreter" +.IX Item "Location of Perl" +.PD 0 +.IP "Command Switches" 4 +.IX Xref "perl, command switches command switches" +.IX Item "Command Switches" +.PD +\&\fB\-0\fR[\fIoctal/hexadecimal\fR] , \fB\-a\fR , \fB\-C +[\fR\f(BInumber/list\fR\fB]\fR , \fB\-c\fR , \fB\-d\fR , \fB\-dt\fR, +\&\fB\-d:\fR\fIMOD[=bar,baz]\fR , \fB\-dt:\fR\fIMOD[=bar,baz]\fR, +\&\fB\-D\fR\fIletters\fR , \fB\-D\fR\fInumber\fR, \fB\-e\fR +\&\fIcommandline\fR , \fB\-E\fR \fIcommandline\fR , \fB\-f\fR + , \fB\-F\fR\fIpattern\fR , \fB\-g\fR , +\&\fB\-h\fR , \fB\-?\fR , \fB\-i\fR[\fIextension\fR] , +\&\fB\-I\fR\fIdirectory\fR , \fB\-l\fR[\fIoctnum\fR] , +\&\fB\-m\fR[\fB\-\fR]\fImodule\fR , \fB\-M\fR[\fB\-\fR]\fImodule\fR, +\&\fB\-M\fR[\fB\-\fR]\fI'module ...'\fR, \fB\-[mM]\fR[\fB\-\fR]\fImodule=arg[,arg]...\fR, \fB\-n\fR +, \fB\-p\fR , \fB\-s\fR , \fB\-S\fR , \fB\-t\fR , \fB\-T\fR , +\&\fB\-u\fR , \fB\-U\fR , \fB\-v\fR , \fB\-V\fR , \fB\-V:\fR\fIconfigvar\fR, +\&\fB\-w\fR , \fB\-W\fR , \fB\-X\fR , \fB\-x\fR , \fB\-x\fR\fIdirectory\fR +.IX Xref "-0 $ -a autosplit -C -c -d -dt -d -dt -D DEBUGGING -DDEBUGGING -e -E -f sitecustomize sitecustomize.pl -F -g -h -? -i in-place -I @INC -l $ $\\ -m -M -n -p -s -S -t -T -u -U -v -V -w -W -X -x" +.RE +.RS 4 +.RE +.IP ENVIRONMENT 4 +.IX Xref "perl, environment variables" +.IX Item "ENVIRONMENT" +HOME , LOGDIR , PATH , PERL5LIB , +PERL5OPT , PERLIO , :crlf , :perlio , +:stdio , :unix , PERLIO_DEBUG , PERLLIB +, PERL5DB , PERL5DB_THREADED , +PERL5SHELL (specific to the Win32 port) , +PERL_ALLOW_NON_IFS_LSP (specific to the Win32 port) +, PERL_DEBUG_MSTATS , +PERL_DESTRUCT_LEVEL , PERL_DL_NONLAZY +, PERL_ENCODING , PERL_HASH_SEED +, PERL_PERTURB_KEYS , +PERL_HASH_SEED_DEBUG , PERL_MEM_LOG , +PERL_ROOT (specific to the VMS port) , PERL_SIGNALS +, PERL_UNICODE , PERL_USE_UNSAFE_INC +, SYS$LOGIN (specific to the VMS port) , +PERL_INTERNAL_RAND_SEED , PERL_RAND_SEED +.IX Xref "HOME LOGDIR PATH PERL5LIB PERL5OPT PERLIO :crlf :perlio :stdio :unix PERLIO_DEBUG PERLLIB PERL5DB PERL5DB_THREADED PERL5SHELL PERL_ALLOW_NON_IFS_LSP PERL_DEBUG_MSTATS PERL_DESTRUCT_LEVEL PERL_DL_NONLAZY PERL_ENCODING PERL_HASH_SEED PERL_PERTURB_KEYS PERL_HASH_SEED_DEBUG PERL_MEM_LOG PERL_ROOT PERL_SIGNALS PERL_UNICODE PERL_USE_UNSAFE_INC SYS$LOGIN PERL_INTERNAL_RAND_SEED PERL_RAND_SEED" +.IP "ORDER OF APPLICATION" 4 +.IX Item "ORDER OF APPLICATION" +\&\-I, \-M, the PERL5LIB environment variable, combinations of \-I, \-M and +PERL5LIB, the PERL5OPT environment variable, Other complications, arch and +version subdirs, sitecustomize.pl +.SS "perlreftut \- Mark's very short tutorial about references" +.IX Subsection "perlreftut - Mark's very short tutorial about references" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Who Needs Complicated Data Structures?" 4 +.IX Item "Who Needs Complicated Data Structures?" +.IP "The Solution" 4 +.IX Item "The Solution" +.IP Syntax 4 +.IX Item "Syntax" +.RS 4 +.IP "Making References" 4 +.IX Item "Making References" +.IP "Using References" 4 +.IX Item "Using References" +.IP "An Example" 4 +.IX Item "An Example" +.IP "Arrow Rule" 4 +.IX Item "Arrow Rule" +.RE +.RS 4 +.RE +.IP Solution 4 +.IX Item "Solution" +.IP "The Rest" 4 +.IX Item "The Rest" +.IP Summary 4 +.IX Item "Summary" +.IP Credits 4 +.IX Item "Credits" +.RS 4 +.IP "Distribution Conditions" 4 +.IX Item "Distribution Conditions" +.RE +.RS 4 +.RE +.PD +.SS "perldsc \- Perl Data Structures Cookbook" +.IX Subsection "perldsc - Perl Data Structures Cookbook" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, +more elaborate constructs +.IP REFERENCES 4 +.IX Xref "reference dereference dereferencing pointer" +.IX Item "REFERENCES" +.PD 0 +.IP "COMMON MISTAKES" 4 +.IX Item "COMMON MISTAKES" +.IP "CAVEAT ON PRECEDENCE" 4 +.IX Xref "dereference, precedence dereferencing, precedence" +.IX Item "CAVEAT ON PRECEDENCE" +.ie n .IP "WHY YOU SHOULD ALWAYS ""use VERSION""" 4 +.el .IP "WHY YOU SHOULD ALWAYS \f(CWuse VERSION\fR" 4 +.IX Item "WHY YOU SHOULD ALWAYS use VERSION" +.IP DEBUGGING 4 +.IX Xref "data structure, debugging complex data structure, debugging AoA, debugging HoA, debugging AoH, debugging HoH, debugging array of arrays, debugging hash of arrays, debugging array of hashes, debugging hash of hashes, debugging" +.IX Item "DEBUGGING" +.IP "CODE EXAMPLES" 4 +.IX Item "CODE EXAMPLES" +.IP "ARRAYS OF ARRAYS" 4 +.IX Xref "array of arrays AoA" +.IX Item "ARRAYS OF ARRAYS" +.RS 4 +.IP "Declaration of an ARRAY OF ARRAYS" 4 +.IX Item "Declaration of an ARRAY OF ARRAYS" +.IP "Generation of an ARRAY OF ARRAYS" 4 +.IX Item "Generation of an ARRAY OF ARRAYS" +.IP "Access and Printing of an ARRAY OF ARRAYS" 4 +.IX Item "Access and Printing of an ARRAY OF ARRAYS" +.RE +.RS 4 +.RE +.IP "HASHES OF ARRAYS" 4 +.IX Xref "hash of arrays HoA" +.IX Item "HASHES OF ARRAYS" +.RS 4 +.IP "Declaration of a HASH OF ARRAYS" 4 +.IX Item "Declaration of a HASH OF ARRAYS" +.IP "Generation of a HASH OF ARRAYS" 4 +.IX Item "Generation of a HASH OF ARRAYS" +.IP "Access and Printing of a HASH OF ARRAYS" 4 +.IX Item "Access and Printing of a HASH OF ARRAYS" +.RE +.RS 4 +.RE +.IP "ARRAYS OF HASHES" 4 +.IX Xref "array of hashes AoH" +.IX Item "ARRAYS OF HASHES" +.RS 4 +.IP "Declaration of an ARRAY OF HASHES" 4 +.IX Item "Declaration of an ARRAY OF HASHES" +.IP "Generation of an ARRAY OF HASHES" 4 +.IX Item "Generation of an ARRAY OF HASHES" +.IP "Access and Printing of an ARRAY OF HASHES" 4 +.IX Item "Access and Printing of an ARRAY OF HASHES" +.RE +.RS 4 +.RE +.IP "HASHES OF HASHES" 4 +.IX Xref "hash of hashes HoH" +.IX Item "HASHES OF HASHES" +.RS 4 +.IP "Declaration of a HASH OF HASHES" 4 +.IX Item "Declaration of a HASH OF HASHES" +.IP "Generation of a HASH OF HASHES" 4 +.IX Item "Generation of a HASH OF HASHES" +.IP "Access and Printing of a HASH OF HASHES" 4 +.IX Item "Access and Printing of a HASH OF HASHES" +.RE +.RS 4 +.RE +.IP "MORE ELABORATE RECORDS" 4 +.IX Xref "record structure struct" +.IX Item "MORE ELABORATE RECORDS" +.RS 4 +.IP "Declaration of MORE ELABORATE RECORDS" 4 +.IX Item "Declaration of MORE ELABORATE RECORDS" +.IP "Declaration of a HASH OF COMPLEX RECORDS" 4 +.IX Item "Declaration of a HASH OF COMPLEX RECORDS" +.IP "Generation of a HASH OF COMPLEX RECORDS" 4 +.IX Item "Generation of a HASH OF COMPLEX RECORDS" +.RE +.RS 4 +.RE +.IP "Database Ties" 4 +.IX Item "Database Ties" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perllol \- Manipulating Arrays of Arrays in Perl" +.IX Subsection "perllol - Manipulating Arrays of Arrays in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Declaration and Access of Arrays of Arrays" 4 +.IX Item "Declaration and Access of Arrays of Arrays" +.IP "Growing Your Own" 4 +.IX Item "Growing Your Own" +.IP "Access and Printing" 4 +.IX Item "Access and Printing" +.IP Slices 4 +.IX Item "Slices" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlrequick \- Perl regular expressions quick start" +.IX Subsection "perlrequick - Perl regular expressions quick start" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "The Guide" 4 +.IX Item "The Guide" +.RS 4 +.IP "Simple word matching" 4 +.IX Item "Simple word matching" +.IP "Using character classes" 4 +.IX Item "Using character classes" +.IP "Matching this or that" 4 +.IX Item "Matching this or that" +.IP "Grouping things and hierarchical matching" 4 +.IX Item "Grouping things and hierarchical matching" +.IP "Extracting matches" 4 +.IX Item "Extracting matches" +.IP "Matching repetitions" 4 +.IX Item "Matching repetitions" +.IP "More matching" 4 +.IX Item "More matching" +.IP "Search and replace" 4 +.IX Item "Search and replace" +.IP "The split operator" 4 +.IX Item "The split operator" +.ie n .IP """use re \*(Aqstrict\*(Aq""" 4 +.el .IP "\f(CWuse re \*(Aqstrict\*(Aq\fR" 4 +.IX Item "use re strict" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.RS 4 +.IP Acknowledgments 4 +.IX Item "Acknowledgments" +.RE +.RS 4 +.RE +.PD +.SS "perlretut \- Perl regular expressions tutorial" +.IX Subsection "perlretut - Perl regular expressions tutorial" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Part 1: The basics" 4 +.IX Item "Part 1: The basics" +.RS 4 +.IP "Simple word matching" 4 +.IX Item "Simple word matching" +.IP "Using character classes" 4 +.IX Item "Using character classes" +.IP "Matching this or that" 4 +.IX Item "Matching this or that" +.IP "Grouping things and hierarchical matching" 4 +.IX Item "Grouping things and hierarchical matching" +.IP "Extracting matches" 4 +.IX Item "Extracting matches" +.IP Backreferences 4 +.IX Item "Backreferences" +.IP "Relative backreferences" 4 +.IX Item "Relative backreferences" +.IP "Named backreferences" 4 +.IX Item "Named backreferences" +.IP "Alternative capture group numbering" 4 +.IX Item "Alternative capture group numbering" +.IP "Position information" 4 +.IX Item "Position information" +.IP "Non-capturing groupings" 4 +.IX Item "Non-capturing groupings" +.IP "Matching repetitions" 4 +.IX Item "Matching repetitions" +.IP "Possessive quantifiers" 4 +.IX Item "Possessive quantifiers" +.IP "Building a regexp" 4 +.IX Item "Building a regexp" +.IP "Using regular expressions in Perl" 4 +.IX Item "Using regular expressions in Perl" +.RE +.RS 4 +.RE +.IP "Part 2: Power tools" 4 +.IX Item "Part 2: Power tools" +.RS 4 +.IP "More on characters, strings, and character classes" 4 +.IX Item "More on characters, strings, and character classes" +.IP "Compiling and saving regular expressions" 4 +.IX Item "Compiling and saving regular expressions" +.IP "Composing regular expressions at runtime" 4 +.IX Item "Composing regular expressions at runtime" +.IP "Embedding comments and modifiers in a regular expression" 4 +.IX Item "Embedding comments and modifiers in a regular expression" +.IP "Looking ahead and looking behind" 4 +.IX Item "Looking ahead and looking behind" +.IP "Using independent subexpressions to prevent backtracking" 4 +.IX Item "Using independent subexpressions to prevent backtracking" +.IP "Conditional expressions" 4 +.IX Item "Conditional expressions" +.IP "Defining named patterns" 4 +.IX Item "Defining named patterns" +.IP "Recursive patterns" 4 +.IX Item "Recursive patterns" +.IP "A bit of magic: executing Perl code in a regular expression" 4 +.IX Item "A bit of magic: executing Perl code in a regular expression" +.IP "Backtracking control verbs" 4 +.IX Item "Backtracking control verbs" +.IP "Pragmas and debugging" 4 +.IX Item "Pragmas and debugging" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.RS 4 +.IP Acknowledgments 4 +.IX Item "Acknowledgments" +.RE +.RS 4 +.RE +.PD +.SS "perlootut \- Object-Oriented Programming in Perl Tutorial" +.IX Subsection "perlootut - Object-Oriented Programming in Perl Tutorial" +.IP DATE 4 +.IX Item "DATE" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OBJECT-ORIENTED FUNDAMENTALS" 4 +.IX Item "OBJECT-ORIENTED FUNDAMENTALS" +.RS 4 +.IP Object 4 +.IX Item "Object" +.IP Class 4 +.IX Item "Class" +.IP Methods 4 +.IX Item "Methods" +.IP Attributes 4 +.IX Item "Attributes" +.IP Polymorphism 4 +.IX Item "Polymorphism" +.IP Inheritance 4 +.IX Item "Inheritance" +.IP Encapsulation 4 +.IX Item "Encapsulation" +.IP Composition 4 +.IX Item "Composition" +.IP Roles 4 +.IX Item "Roles" +.IP "When to Use OO" 4 +.IX Item "When to Use OO" +.RE +.RS 4 +.RE +.IP "PERL OO SYSTEMS" 4 +.IX Item "PERL OO SYSTEMS" +.RS 4 +.IP Moose 4 +.IX Item "Moose" +.PD +Declarative sugar, Roles built-in, A miniature type system, Full +introspection and manipulation, Self-hosted and extensible, Rich ecosystem, +Many more features +.IP Class::Accessor 4 +.IX Item "Class::Accessor" +.PD 0 +.IP Class::Tiny 4 +.IX Item "Class::Tiny" +.IP Role::Tiny 4 +.IX Item "Role::Tiny" +.IP "OO System Summary" 4 +.IX Item "OO System Summary" +.PD +Moose, Class::Accessor, Class::Tiny, Role::Tiny +.IP "Other OO Systems" 4 +.IX Item "Other OO Systems" +.RE +.RS 4 +.RE +.PD 0 +.IP CONCLUSION 4 +.IX Item "CONCLUSION" +.PD +.SS "perlperf \- Perl Performance and Optimization Techniques" +.IX Subsection "perlperf - Perl Performance and Optimization Techniques" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP OVERVIEW 4 +.IX Item "OVERVIEW" +.RS 4 +.IP "ONE STEP SIDEWAYS" 4 +.IX Item "ONE STEP SIDEWAYS" +.IP "ONE STEP FORWARD" 4 +.IX Item "ONE STEP FORWARD" +.IP "ANOTHER STEP SIDEWAYS" 4 +.IX Item "ANOTHER STEP SIDEWAYS" +.RE +.RS 4 +.RE +.IP "GENERAL GUIDELINES" 4 +.IX Item "GENERAL GUIDELINES" +.IP BENCHMARKS 4 +.IX Item "BENCHMARKS" +.RS 4 +.IP "Assigning and Dereferencing Variables." 4 +.IX Item "Assigning and Dereferencing Variables." +.IP "Search and replace or tr" 4 +.IX Item "Search and replace or tr" +.RE +.RS 4 +.RE +.IP "PROFILING TOOLS" 4 +.IX Item "PROFILING TOOLS" +.RS 4 +.IP Devel::DProf 4 +.IX Item "Devel::DProf" +.IP Devel::Profiler 4 +.IX Item "Devel::Profiler" +.IP Devel::SmallProf 4 +.IX Item "Devel::SmallProf" +.IP Devel::FastProf 4 +.IX Item "Devel::FastProf" +.IP Devel::NYTProf 4 +.IX Item "Devel::NYTProf" +.RE +.RS 4 +.RE +.IP SORTING 4 +.IX Item "SORTING" +.PD +Elapsed Real Time, User CPU Time, System CPU Time +.IP LOGGING 4 +.IX Item "LOGGING" +.RS 4 +.PD 0 +.IP "Logging if DEBUG (constant)" 4 +.IX Item "Logging if DEBUG (constant)" +.RE +.RS 4 +.RE +.IP POSTSCRIPT 4 +.IX Item "POSTSCRIPT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP PERLDOCS 4 +.IX Item "PERLDOCS" +.IP "MAN PAGES" 4 +.IX Item "MAN PAGES" +.IP MODULES 4 +.IX Item "MODULES" +.IP URLS 4 +.IX Item "URLS" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlstyle \- Perl style guide" +.IX Subsection "perlstyle - Perl style guide" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "perlcheat \- Perl 5 Cheat Sheet" +.IX Subsection "perlcheat - Perl 5 Cheat Sheet" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "The sheet" 4 +.IX Item "The sheet" +.RE +.RS 4 +.RE +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perltrap \- Perl traps for the unwary" +.IX Subsection "perltrap - Perl traps for the unwary" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Awk Traps" 4 +.IX Item "Awk Traps" +.IP "C/C++ Traps" 4 +.IX Item "C/C++ Traps" +.IP "JavaScript Traps" 4 +.IX Item "JavaScript Traps" +.IP "Sed Traps" 4 +.IX Item "Sed Traps" +.IP "Shell Traps" 4 +.IX Item "Shell Traps" +.IP "Perl Traps" 4 +.IX Item "Perl Traps" +.RE +.RS 4 +.RE +.PD +.SS "perldebtut \- Perl debugging tutorial" +.IX Subsection "perldebtut - Perl debugging tutorial" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "use strict" 4 +.IX Item "use strict" +.IP "Looking at data and \-w and v" 4 +.IX Item "Looking at data and -w and v" +.IP help 4 +.IX Item "help" +.IP "Stepping through code" 4 +.IX Item "Stepping through code" +.IP "Placeholder for a, w, t, T" 4 +.IX Item "Placeholder for a, w, t, T" +.IP "REGULAR EXPRESSIONS" 4 +.IX Item "REGULAR EXPRESSIONS" +.IP "OUTPUT TIPS" 4 +.IX Item "OUTPUT TIPS" +.IP CGI 4 +.IX Item "CGI" +.IP GUIs 4 +.IX Item "GUIs" +.IP SUMMARY 4 +.IX Item "SUMMARY" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.PD +.SS "perlfaq \- Frequently asked questions about Perl" +.IX Subsection "perlfaq - Frequently asked questions about Perl" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Where to find the perlfaq" 4 +.IX Item "Where to find the perlfaq" +.IP "How to use the perlfaq" 4 +.IX Item "How to use the perlfaq" +.IP "How to contribute to the perlfaq" 4 +.IX Item "How to contribute to the perlfaq" +.IP "What if my question isn't answered in the FAQ?" 4 +.IX Item "What if my question isn't answered in the FAQ?" +.RE +.RS 4 +.RE +.IP "TABLE OF CONTENTS" 4 +.IX Item "TABLE OF CONTENTS" +.PD +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 \- +Web, Email and Networking +.IP "THE QUESTIONS" 4 +.IX Item "THE QUESTIONS" +.RS 4 +.PD 0 +.IP "perlfaq1: General Questions About Perl" 4 +.IX Item "perlfaq1: General Questions About Perl" +.IP "perlfaq2: Obtaining and Learning about Perl" 4 +.IX Item "perlfaq2: Obtaining and Learning about Perl" +.IP "perlfaq3: Programming Tools" 4 +.IX Item "perlfaq3: Programming Tools" +.IP "perlfaq4: Data Manipulation" 4 +.IX Item "perlfaq4: Data Manipulation" +.IP "perlfaq5: Files and Formats" 4 +.IX Item "perlfaq5: Files and Formats" +.IP "perlfaq6: Regular Expressions" 4 +.IX Item "perlfaq6: Regular Expressions" +.IP "perlfaq7: General Perl Language Issues" 4 +.IX Item "perlfaq7: General Perl Language Issues" +.IP "perlfaq8: System Interaction" 4 +.IX Item "perlfaq8: System Interaction" +.IP "perlfaq9: Web, Email and Networking" 4 +.IX Item "perlfaq9: Web, Email and Networking" +.RE +.RS 4 +.RE +.IP CREDITS 4 +.IX Item "CREDITS" +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq1 \- General Questions About Perl" +.IX Subsection "perlfaq1 - General Questions About Perl" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "What is Perl?" 4 +.IX Item "What is Perl?" +.IP "Who supports Perl? Who develops it? Why is it free?" 4 +.IX Item "Who supports Perl? Who develops it? Why is it free?" +.IP "Which version of Perl should I use?" 4 +.IX Item "Which version of Perl should I use?" +.IP "What are Perl 4, Perl 5, or Raku (Perl 6)?" 4 +.IX Item "What are Perl 4, Perl 5, or Raku (Perl 6)?" +.IP "What is Raku (Perl 6)?" 4 +.IX Item "What is Raku (Perl 6)?" +.IP "How stable is Perl?" 4 +.IX Item "How stable is Perl?" +.IP "How often are new versions of Perl released?" 4 +.IX Item "How often are new versions of Perl released?" +.IP "Is Perl difficult to learn?" 4 +.IX Item "Is Perl difficult to learn?" +.IP "How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl?" 4 +.IX Item "How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl?" +.IP "Can I do [task] in Perl?" 4 +.IX Item "Can I do [task] in Perl?" +.IP "When shouldn't I program in Perl?" 4 +.IX Item "When shouldn't I program in Perl?" +.IP "What's the difference between ""perl"" and ""Perl""?" 4 +.IX Item "What's the difference between ""perl"" and ""Perl""?" +.IP "What is a JAPH?" 4 +.IX Item "What is a JAPH?" +.IP "How can I convince others to use Perl?" 4 +.IX Item "How can I convince others to use Perl?" +.PD +<http://www.perl.org/about.html>, +<http://perltraining.com.au/whyperl.html> +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.SS "perlfaq2 \- Obtaining and Learning about Perl" +.IX Subsection "perlfaq2 - Obtaining and Learning about Perl" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "What machines support Perl? Where do I get it?" 4 +.IX Item "What machines support Perl? Where do I get it?" +.IP "How can I get a binary version of Perl?" 4 +.IX Item "How can I get a binary version of Perl?" +.IP "I don't have a C compiler. How can I build my own Perl interpreter?" 4 +.IX Item "I don't have a C compiler. How can I build my own Perl interpreter?" +.IP "I copied the Perl binary from one machine to another, but scripts don't work." 4 +.IX Item "I copied the Perl binary from one machine to another, but scripts don't work." +.IP "I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?" 4 +.IX Item "I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?" +.IP "What modules and extensions are available for Perl? What is CPAN?" 4 +.IX Item "What modules and extensions are available for Perl? What is CPAN?" +.IP "Where can I get information on Perl?" 4 +.IX Item "Where can I get information on Perl?" +.PD +<http://www.perl.org/>, <http://perldoc.perl.org/>, +<http://learn.perl.org/> +.IP "What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?" 4 +.IX Item "What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?" +<http://www.perl.org/>, <http://learn.perl.org/>, +<http://jobs.perl.org/>, <http://lists.perl.org/> +.IP "Where can I post questions?" 4 +.IX Item "Where can I post questions?" +.PD 0 +.IP "Perl Books" 4 +.IX Item "Perl Books" +.IP "Which magazines have Perl content?" 4 +.IX Item "Which magazines have Perl content?" +.IP "Which Perl blogs should I read?" 4 +.IX Item "Which Perl blogs should I read?" +.IP "What mailing lists are there for Perl?" 4 +.IX Item "What mailing lists are there for Perl?" +.IP "Where can I buy a commercial version of Perl?" 4 +.IX Item "Where can I buy a commercial version of Perl?" +.IP "Where do I send bug reports?" 4 +.IX Item "Where do I send bug reports?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq3 \- Programming Tools" +.IX Subsection "perlfaq3 - Programming Tools" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How do I do (anything)?" 4 +.IX Item "How do I do (anything)?" +.PD +Basics, perldata \- Perl data types, perlvar \- Perl pre-defined +variables, perlsyn \- Perl syntax, perlop \- Perl operators and +precedence, perlsub \- Perl subroutines, Execution, perlrun \- how to +execute the Perl interpreter, perldebug \- Perl debugging, Functions, +perlfunc \- Perl builtin functions, Objects, perlref \- Perl references +and nested data structures, perlmod \- Perl modules (packages and symbol +tables), perlobj \- Perl objects, perltie \- how to hide an object +class in a simple variable, Data Structures, perlref \- Perl references +and nested data structures, perllol \- Manipulating arrays of arrays in +Perl, perldsc \- Perl Data Structures Cookbook, Modules, perlmod \- +Perl modules (packages and symbol tables), perlmodlib \- constructing new +Perl modules and finding existing ones, Regexes, perlre \- Perl regular +expressions, perlfunc \- Perl builtin functions>, perlop \- Perl +operators and precedence, perllocale \- Perl locale handling +(internationalization and localization), Moving to perl5, perltrap \- +Perl traps for the unwary, perl, Linking with C, perlxstut \- Tutorial +for writing XSUBs, perlxs \- XS language reference manual, perlcall \- +Perl calling conventions from C, perlguts \- Introduction to the Perl +API, perlembed \- how to embed perl in your C program, Various +.IP "How can I use Perl interactively?" 4 +.IX Item "How can I use Perl interactively?" +.PD 0 +.IP "How do I find which modules are installed on my system?" 4 +.IX Item "How do I find which modules are installed on my system?" +.IP "How do I debug my Perl programs?" 4 +.IX Item "How do I debug my Perl programs?" +.IP "How do I profile my Perl programs?" 4 +.IX Item "How do I profile my Perl programs?" +.IP "How do I cross-reference my Perl programs?" 4 +.IX Item "How do I cross-reference my Perl programs?" +.IP "Is there a pretty-printer (formatter) for Perl?" 4 +.IX Item "Is there a pretty-printer (formatter) for Perl?" +.IP "Is there an IDE or Windows Perl Editor?" 4 +.IX Item "Is there an IDE or Windows Perl Editor?" +.PD +Eclipse, Enginsite, IntelliJ IDEA, Kephra, Komodo, Notepad++, Open Perl +IDE, OptiPerl, Padre, PerlBuilder, visiPerl+, Visual Perl, Zeus, GNU Emacs, +MicroEMACS, XEmacs, Jed, Vim, Vile, MultiEdit, SlickEdit, ConTEXT, bash, +zsh, BBEdit and TextWrangler +.IP "Where can I get Perl macros for vi?" 4 +.IX Item "Where can I get Perl macros for vi?" +.PD 0 +.IP "Where can I get perl-mode or cperl-mode for emacs?" 4 +.IX Xref "emacs" +.IX Item "Where can I get perl-mode or cperl-mode for emacs?" +.IP "How can I use curses with Perl?" 4 +.IX Item "How can I use curses with Perl?" +.IP "How can I write a GUI (X, Tk, Gtk, etc.) in Perl?" 4 +.IX Xref "GUI Tk Wx WxWidgets Gtk Gtk2 CamelBones Qt" +.IX Item "How can I write a GUI (X, Tk, Gtk, etc.) in Perl?" +.PD +Tk, Wx, Gtk and Gtk2, Win32::GUI, CamelBones, Qt, Athena +.IP "How can I make my Perl program run faster?" 4 +.IX Item "How can I make my Perl program run faster?" +.PD 0 +.IP "How can I make my Perl program take less memory?" 4 +.IX Item "How can I make my Perl program take less memory?" +.PD +Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and +stringification, Pass by reference, Tie large variables to disk +.IP "Is it safe to return a reference to local or lexical data?" 4 +.IX Item "Is it safe to return a reference to local or lexical data?" +.PD 0 +.IP "How can I free an array or hash so my program shrinks?" 4 +.IX Item "How can I free an array or hash so my program shrinks?" +.IP "How can I make my CGI script more efficient?" 4 +.IX Item "How can I make my CGI script more efficient?" +.IP "How can I hide the source for my Perl program?" 4 +.IX Item "How can I hide the source for my Perl program?" +.IP "How can I compile my Perl program into byte code or C?" 4 +.IX Item "How can I compile my Perl program into byte code or C?" +.ie n .IP "How can I get ""#!perl"" to work on [MS\-DOS,NT,...]?" 4 +.el .IP "How can I get \f(CW#!perl\fR to work on [MS\-DOS,NT,...]?" 4 +.IX Item "How can I get #!perl to work on [MS-DOS,NT,...]?" +.IP "Can I write useful Perl programs on the command line?" 4 +.IX Item "Can I write useful Perl programs on the command line?" +.IP "Why don't Perl one-liners work on my DOS/Mac/VMS system?" 4 +.IX Item "Why don't Perl one-liners work on my DOS/Mac/VMS system?" +.IP "Where can I learn about CGI or Web programming in Perl?" 4 +.IX Item "Where can I learn about CGI or Web programming in Perl?" +.IP "Where can I learn about object-oriented Perl programming?" 4 +.IX Item "Where can I learn about object-oriented Perl programming?" +.IP "Where can I learn about linking C with Perl?" 4 +.IX Item "Where can I learn about linking C with Perl?" +.IP "I've read perlembed, perlguts, etc., but I can't embed perl in my C program; what am I doing wrong?" 4 +.IX Item "I've read perlembed, perlguts, etc., but I can't embed perl in my C program; what am I doing wrong?" +.IP "When I tried to run my script, I got this message. What does it mean?" 4 +.IX Item "When I tried to run my script, I got this message. What does it mean?" +.IP "What's MakeMaker?" 4 +.IX Item "What's MakeMaker?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq4 \- Data Manipulation" +.IX Subsection "perlfaq4 - Data Manipulation" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Data: Numbers" 4 +.IX Item "Data: Numbers" +.RS 4 +.IP "Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?" 4 +.IX Item "Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?" +.IP "Why is \fBint()\fR broken?" 4 +.IX Item "Why is int() broken?" +.IP "Why isn't my octal data interpreted correctly?" 4 +.IX Item "Why isn't my octal data interpreted correctly?" +.IP "Does Perl have a \fBround()\fR function? What about \fBceil()\fR and \fBfloor()\fR? Trig functions?" 4 +.IX Item "Does Perl have a round() function? What about ceil() and floor()? Trig functions?" +.IP "How do I convert between numeric representations/bases/radixes?" 4 +.IX Item "How do I convert between numeric representations/bases/radixes?" +.PD +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 +.IP "Why doesn't & work the way I want it to?" 4 +.IX Item "Why doesn't & work the way I want it to?" +.PD 0 +.IP "How do I multiply matrices?" 4 +.IX Item "How do I multiply matrices?" +.IP "How do I perform an operation on a series of integers?" 4 +.IX Item "How do I perform an operation on a series of integers?" +.IP "How can I output Roman numerals?" 4 +.IX Item "How can I output Roman numerals?" +.IP "Why aren't my random numbers random?" 4 +.IX Item "Why aren't my random numbers random?" +.IP "How do I get a random number between X and Y?" 4 +.IX Item "How do I get a random number between X and Y?" +.RE +.RS 4 +.RE +.IP "Data: Dates" 4 +.IX Item "Data: Dates" +.RS 4 +.IP "How do I find the day or week of the year?" 4 +.IX Item "How do I find the day or week of the year?" +.IP "How do I find the current century or millennium?" 4 +.IX Item "How do I find the current century or millennium?" +.IP "How can I compare two dates and find the difference?" 4 +.IX Item "How can I compare two dates and find the difference?" +.IP "How can I take a string and turn it into epoch seconds?" 4 +.IX Item "How can I take a string and turn it into epoch seconds?" +.IP "How can I find the Julian Day?" 4 +.IX Item "How can I find the Julian Day?" +.IP "How do I find yesterday's date?" 4 +.IX Xref "date yesterday DateTime Date::Calc Time::Local daylight saving time day Today_and_Now localtime timelocal" +.IX Item "How do I find yesterday's date?" +.IP "Does Perl have a Year 2000 or 2038 problem? Is Perl Y2K compliant?" 4 +.IX Item "Does Perl have a Year 2000 or 2038 problem? Is Perl Y2K compliant?" +.RE +.RS 4 +.RE +.IP "Data: Strings" 4 +.IX Item "Data: Strings" +.RS 4 +.IP "How do I validate input?" 4 +.IX Item "How do I validate input?" +.IP "How do I unescape a string?" 4 +.IX Item "How do I unescape a string?" +.IP "How do I remove consecutive pairs of characters?" 4 +.IX Item "How do I remove consecutive pairs of characters?" +.IP "How do I expand function calls in a string?" 4 +.IX Item "How do I expand function calls in a string?" +.IP "How do I find matching/nesting anything?" 4 +.IX Item "How do I find matching/nesting anything?" +.IP "How do I reverse a string?" 4 +.IX Item "How do I reverse a string?" +.IP "How do I expand tabs in a string?" 4 +.IX Item "How do I expand tabs in a string?" +.IP "How do I reformat a paragraph?" 4 +.IX Item "How do I reformat a paragraph?" +.IP "How can I access or change N characters of a string?" 4 +.IX Item "How can I access or change N characters of a string?" +.IP "How do I change the Nth occurrence of something?" 4 +.IX Item "How do I change the Nth occurrence of something?" +.IP "How can I count the number of occurrences of a substring within a string?" 4 +.IX Item "How can I count the number of occurrences of a substring within a string?" +.IP "How do I capitalize all the words on one line?" 4 +.IX Xref "Text::Autoformat capitalize case, title case, sentence" +.IX Item "How do I capitalize all the words on one line?" +.IP "How can I split a [character]\-delimited string except when inside [character]?" 4 +.IX Item "How can I split a [character]-delimited string except when inside [character]?" +.IP "How do I strip blank space from the beginning/end of a string?" 4 +.IX Item "How do I strip blank space from the beginning/end of a string?" +.IP "How do I pad a string with blanks or pad a number with zeroes?" 4 +.IX Item "How do I pad a string with blanks or pad a number with zeroes?" +.IP "How do I extract selected columns from a string?" 4 +.IX Item "How do I extract selected columns from a string?" +.IP "How do I find the soundex value of a string?" 4 +.IX Item "How do I find the soundex value of a string?" +.IP "How can I expand variables in text strings?" 4 +.IX Item "How can I expand variables in text strings?" +.IP "Does Perl have anything like Ruby's #{} or Python's f string?" 4 +.IX Item "Does Perl have anything like Ruby's #{} or Python's f string?" +.IP "What's wrong with always quoting ""$vars""?" 4 +.IX Item "What's wrong with always quoting ""$vars""?" +.IP "Why don't my <<HERE documents work?" 4 +.IX Item "Why don't my <<HERE documents work?" +.PD +There must be no space after the << part, There (probably) should +be a semicolon at the end of the opening token, You can't (easily) have any +space in front of the tag, There needs to be at least a line separator +after the end token +.RE +.RS 4 +.RE +.IP "Data: Arrays" 4 +.IX Item "Data: Arrays" +.RS 4 +.PD 0 +.IP "What is the difference between a list and an array?" 4 +.IX Item "What is the difference between a list and an array?" +.ie n .IP "What is the difference between $array[1] and @array[1]?" 4 +.el .IP "What is the difference between \f(CW$array\fR[1] and \f(CW@array\fR[1]?" 4 +.IX Item "What is the difference between $array[1] and @array[1]?" +.IP "How can I remove duplicate elements from a list or array?" 4 +.IX Item "How can I remove duplicate elements from a list or array?" +.IP "How can I tell whether a certain element is contained in a list or array?" 4 +.IX Item "How can I tell whether a certain element is contained in a list or array?" +.IP "How do I compute the difference of two arrays? How do I compute the intersection of two arrays?" 4 +.IX Item "How do I compute the difference of two arrays? How do I compute the intersection of two arrays?" +.IP "How do I test whether two arrays or hashes are equal?" 4 +.IX Item "How do I test whether two arrays or hashes are equal?" +.IP "How do I find the first array element for which a condition is true?" 4 +.IX Item "How do I find the first array element for which a condition is true?" +.IP "How do I handle linked lists?" 4 +.IX Item "How do I handle linked lists?" +.IP "How do I handle circular lists?" 4 +.IX Xref "circular array Tie::Cycle Array::Iterator::Circular cycle modulus" +.IX Item "How do I handle circular lists?" +.IP "How do I shuffle an array randomly?" 4 +.IX Item "How do I shuffle an array randomly?" +.IP "How do I process/modify each element of an array?" 4 +.IX Item "How do I process/modify each element of an array?" +.IP "How do I select a random element from an array?" 4 +.IX Item "How do I select a random element from an array?" +.IP "How do I permute N elements of a list?" 4 +.IX Xref "List::Permutor permute Algorithm::Loops Knuth The Art of Computer Programming Fischer-Krause" +.IX Item "How do I permute N elements of a list?" +.IP "How do I sort an array by (anything)?" 4 +.IX Item "How do I sort an array by (anything)?" +.IP "How do I manipulate arrays of bits?" 4 +.IX Item "How do I manipulate arrays of bits?" +.IP "Why does \fBdefined()\fR return true on empty arrays and hashes?" 4 +.IX Item "Why does defined() return true on empty arrays and hashes?" +.RE +.RS 4 +.RE +.IP "Data: Hashes (Associative Arrays)" 4 +.IX Item "Data: Hashes (Associative Arrays)" +.RS 4 +.IP "How do I process an entire hash?" 4 +.IX Item "How do I process an entire hash?" +.IP "How do I merge two hashes?" 4 +.IX Xref "hash merge slice, hash" +.IX Item "How do I merge two hashes?" +.IP "What happens if I add or remove keys from a hash while iterating over it?" 4 +.IX Item "What happens if I add or remove keys from a hash while iterating over it?" +.IP "How do I look up a hash element by value?" 4 +.IX Item "How do I look up a hash element by value?" +.IP "How can I know how many entries are in a hash?" 4 +.IX Item "How can I know how many entries are in a hash?" +.IP "How do I sort a hash (optionally by value instead of key)?" 4 +.IX Item "How do I sort a hash (optionally by value instead of key)?" +.IP "How can I always keep my hash sorted?" 4 +.IX Xref "hash tie sort DB_File Tie::IxHash" +.IX Item "How can I always keep my hash sorted?" +.IP "What's the difference between ""delete"" and ""undef"" with hashes?" 4 +.IX Item "What's the difference between ""delete"" and ""undef"" with hashes?" +.IP "Why don't my tied hashes make the defined/exists distinction?" 4 +.IX Item "Why don't my tied hashes make the defined/exists distinction?" +.IP "How do I reset an \fBeach()\fR operation part-way through?" 4 +.IX Item "How do I reset an each() operation part-way through?" +.IP "How can I get the unique keys from two hashes?" 4 +.IX Item "How can I get the unique keys from two hashes?" +.IP "How can I store a multidimensional array in a DBM file?" 4 +.IX Item "How can I store a multidimensional array in a DBM file?" +.IP "How can I make my hash remember the order I put elements into it?" 4 +.IX Item "How can I make my hash remember the order I put elements into it?" +.IP "Why does passing a subroutine an undefined element in a hash create it?" 4 +.IX Item "Why does passing a subroutine an undefined element in a hash create it?" +.IP "How can I make the Perl equivalent of a C structure/C++ class/hash or array of hashes or arrays?" 4 +.IX Item "How can I make the Perl equivalent of a C structure/C++ class/hash or array of hashes or arrays?" +.IP "How can I use a reference as a hash key?" 4 +.IX Item "How can I use a reference as a hash key?" +.IP "How can I check if a key exists in a multilevel hash?" 4 +.IX Item "How can I check if a key exists in a multilevel hash?" +.IP "How can I prevent addition of unwanted keys into a hash?" 4 +.IX Item "How can I prevent addition of unwanted keys into a hash?" +.RE +.RS 4 +.RE +.IP "Data: Misc" 4 +.IX Item "Data: Misc" +.RS 4 +.IP "How do I handle binary data correctly?" 4 +.IX Item "How do I handle binary data correctly?" +.IP "How do I determine whether a scalar is a number/whole/integer/float?" 4 +.IX Item "How do I determine whether a scalar is a number/whole/integer/float?" +.IP "How do I keep persistent data across program calls?" 4 +.IX Item "How do I keep persistent data across program calls?" +.IP "How do I print out or copy a recursive data structure?" 4 +.IX Item "How do I print out or copy a recursive data structure?" +.IP "How do I define methods for every class/object?" 4 +.IX Item "How do I define methods for every class/object?" +.IP "How do I verify a credit card checksum?" 4 +.IX Item "How do I verify a credit card checksum?" +.IP "How do I pack arrays of doubles or floats for XS code?" 4 +.IX Item "How do I pack arrays of doubles or floats for XS code?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq5 \- Files and Formats" +.IX Subsection "perlfaq5 - Files and Formats" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How do I flush/unbuffer an output filehandle? Why must I do this?" 4 +.IX Xref "flush buffer unbuffer autoflush" +.IX Item "How do I flush/unbuffer an output filehandle? Why must I do this?" +.IP "How do I change, delete, or insert a line in a file, or append to the beginning of a file?" 4 +.IX Xref "file, editing" +.IX Item "How do I change, delete, or insert a line in a file, or append to the beginning of a file?" +.IP "How do I count the number of lines in a file?" 4 +.IX Xref "file, counting lines lines line" +.IX Item "How do I count the number of lines in a file?" +.IP "How do I delete the last N lines from a file?" 4 +.IX Xref "lines file" +.IX Item "How do I delete the last N lines from a file?" +.ie n .IP "How can I use Perl's ""\-i"" option from within a program?" 4 +.el .IP "How can I use Perl's \f(CW\-i\fR option from within a program?" 4 +.IX Xref "-i in-place" +.IX Item "How can I use Perl's -i option from within a program?" +.IP "How can I copy a file?" 4 +.IX Xref "copy file, copy File::Copy" +.IX Item "How can I copy a file?" +.IP "How do I make a temporary file name?" 4 +.IX Xref "file, temporary" +.IX Item "How do I make a temporary file name?" +.IP "How can I manipulate fixed-record-length files?" 4 +.IX Xref "fixed-length file, fixed-length records" +.IX Item "How can I manipulate fixed-record-length files?" +.IP "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?" 4 +.IX Xref "filehandle, local filehandle, passing filehandle, reference" +.IX 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?" +.IP "How can I use a filehandle indirectly?" 4 +.IX Xref "filehandle, indirect" +.IX Item "How can I use a filehandle indirectly?" +.IP "How can I open a filehandle to a string?" 4 +.IX Xref "string open IO::String filehandle" +.IX Item "How can I open a filehandle to a string?" +.IP "How can I set up a footer format to be used with \fBwrite()\fR?" 4 +.IX Xref "footer" +.IX Item "How can I set up a footer format to be used with write()?" +.IP "How can I \fBwrite()\fR into a string?" 4 +.IX Xref "write, into a string" +.IX Item "How can I write() into a string?" +.IP "How can I output my numbers with commas added?" 4 +.IX Xref "number, commify" +.IX Item "How can I output my numbers with commas added?" +.IP "How can I translate tildes (~) in a filename?" 4 +.IX Xref "tilde tilde expansion" +.IX Item "How can I translate tildes (~) in a filename?" +.IP "How come when I open a file read-write it wipes it out?" 4 +.IX Xref "clobber read-write clobbering truncate truncating" +.IX Item "How come when I open a file read-write it wipes it out?" +.IP "Why do I sometimes get an ""Argument list too long"" when I use <*>?" 4 +.IX Xref "argument list too long" +.IX Item "Why do I sometimes get an ""Argument list too long"" when I use <*>?" +.IP "How can I open a file named with a leading "">"" or trailing blanks?" 4 +.IX Xref "filename, special characters" +.IX Item "How can I open a file named with a leading "">"" or trailing blanks?" +.IP "How can I reliably rename a file?" 4 +.IX Xref "rename mv move file, rename" +.IX Item "How can I reliably rename a file?" +.IP "How can I lock a file?" 4 +.IX Xref "lock file, lock flock" +.IX Item "How can I lock a file?" +.IP "Why can't I just open(FH, "">file.lock"")?" 4 +.IX Xref "lock, lockfile race condition" +.IX Item "Why can't I just open(FH, "">file.lock"")?" +.IP "I still don't get locking. I just want to increment the number in the file. How can I do this?" 4 +.IX Xref "counter file, counter" +.IX Item "I still don't get locking. I just want to increment the number in the file. How can I do this?" +.IP "All I want to do is append a small amount of text to the end of a file. Do I still have to use locking?" 4 +.IX Xref "append file, append" +.IX Item "All I want to do is append a small amount of text to the end of a file. Do I still have to use locking?" +.IP "How do I randomly update a binary file?" 4 +.IX Xref "file, binary patch" +.IX Item "How do I randomly update a binary file?" +.IP "How do I get a file's timestamp in perl?" 4 +.IX Xref "timestamp file, timestamp" +.IX Item "How do I get a file's timestamp in perl?" +.IP "How do I set a file's timestamp in perl?" 4 +.IX Xref "timestamp file, timestamp" +.IX Item "How do I set a file's timestamp in perl?" +.IP "How do I print to more than one file at once?" 4 +.IX Xref "print, to multiple files" +.IX Item "How do I print to more than one file at once?" +.IP "How can I read in an entire file all at once?" 4 +.IX Xref "slurp file, slurping" +.IX Item "How can I read in an entire file all at once?" +.IP "How can I read in a file by paragraphs?" 4 +.IX Xref "file, reading by paragraphs" +.IX Item "How can I read in a file by paragraphs?" +.IP "How can I read a single character from a file? From the keyboard?" 4 +.IX Xref "getc file, reading one character at a time" +.IX Item "How can I read a single character from a file? From the keyboard?" +.IP "How can I tell whether there's a character waiting on a filehandle?" 4 +.IX Item "How can I tell whether there's a character waiting on a filehandle?" +.ie n .IP "How do I do a ""tail \-f"" in perl?" 4 +.el .IP "How do I do a \f(CWtail \-f\fR in perl?" 4 +.IX Xref "tail IO::Handle File::Tail clearerr" +.IX Item "How do I do a tail -f in perl?" +.IP "How do I \fBdup()\fR a filehandle in Perl?" 4 +.IX Xref "dup" +.IX Item "How do I dup() a filehandle in Perl?" +.IP "How do I close a file descriptor by number?" 4 +.IX Xref "file, closing file descriptors POSIX close" +.IX Item "How do I close a file descriptor by number?" +.IP "Why can't I use ""C:\etemp\efoo"" in DOS paths? Why doesn't `C:\etemp\efoo.exe` work?" 4 +.IX Xref "filename, DOS issues" +.IX Item "Why can't I use ""C:tempfoo"" in DOS paths? Why doesn't `C:tempfoo.exe` work?" +.IP "Why doesn't glob(""*.*"") get all the files?" 4 +.IX Xref "glob" +.IX Item "Why doesn't glob(""*.*"") get all the files?" +.ie n .IP "Why does Perl let me delete read-only files? Why does ""\-i"" clobber protected files? Isn't this a bug in Perl?" 4 +.el .IP "Why does Perl let me delete read-only files? Why does \f(CW\-i\fR clobber protected files? Isn't this a bug in Perl?" 4 +.IX Item "Why does Perl let me delete read-only files? Why does -i clobber protected files? Isn't this a bug in Perl?" +.IP "How do I select a random line from a file?" 4 +.IX Xref "file, selecting a random line" +.IX Item "How do I select a random line from a file?" +.IP "Why do I get weird spaces when I print an array of lines?" 4 +.IX Item "Why do I get weird spaces when I print an array of lines?" +.IP "How do I traverse a directory tree?" 4 +.IX Item "How do I traverse a directory tree?" +.IP "How do I delete a directory tree?" 4 +.IX Item "How do I delete a directory tree?" +.IP "How do I copy an entire directory?" 4 +.IX Item "How do I copy an entire directory?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq6 \- Regular Expressions" +.IX Subsection "perlfaq6 - Regular Expressions" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How can I hope to use regular expressions without creating illegible and unmaintainable code?" 4 +.IX Xref "regex, legibility regexp, legibility regular expression, legibility x" +.IX Item "How can I hope to use regular expressions without creating illegible and unmaintainable code?" +.PD +Comments Outside the Regex, Comments Inside the Regex, Different Delimiters +.IP "I'm having trouble matching over more than one line. What's wrong?" 4 +.IX Xref "regex, multiline regexp, multiline regular expression, multiline" +.IX Item "I'm having trouble matching over more than one line. What's wrong?" +.PD 0 +.IP "How can I pull out lines between two patterns that are themselves on different lines?" 4 +.IX Xref ".." +.IX Item "How can I pull out lines between two patterns that are themselves on different lines?" +.IP "How do I match XML, HTML, or other nasty, ugly things with a regex?" 4 +.IX Xref "regex, XML regex, HTML XML HTML pain frustration sucking out, will to live" +.IX Item "How do I match XML, HTML, or other nasty, ugly things with a regex?" +.IP "I put a regular expression into $/ but it didn't work. What's wrong?" 4 +.IX Xref "$ , regexes in $INPUT_RECORD_SEPARATOR, regexes in $RS, regexes in" +.IX Item "I put a regular expression into $/ but it didn't work. What's wrong?" +.IP "How do I substitute case-insensitively on the LHS while preserving case on the RHS?" 4 +.IX Xref "replace, case preserving substitute, case preserving substitution, case preserving s, case preserving" +.IX Item "How do I substitute case-insensitively on the LHS while preserving case on the RHS?" +.ie n .IP "How can I make ""\ew"" match national character sets?" 4 +.el .IP "How can I make \f(CW\ew\fR match national character sets?" 4 +.IX Xref "\\w" +.IX Item "How can I make w match national character sets?" +.ie n .IP "How can I match a locale-smart version of ""/[a\-zA\-Z]/""?" 4 +.el .IP "How can I match a locale-smart version of \f(CW/[a\-zA\-Z]/\fR?" 4 +.IX Xref "alpha" +.IX Item "How can I match a locale-smart version of /[a-zA-Z]/?" +.IP "How can I quote a variable to use in a regex?" 4 +.IX Xref "regex, escaping regexp, escaping regular expression, escaping" +.IX Item "How can I quote a variable to use in a regex?" +.ie n .IP "What is ""/o"" really for?" 4 +.el .IP "What is \f(CW/o\fR really for?" 4 +.IX Xref " o, regular expressions compile, regular expressions" +.IX Item "What is /o really for?" +.IP "How do I use a regular expression to strip C\-style comments from a file?" 4 +.IX Item "How do I use a regular expression to strip C-style comments from a file?" +.IP "Can I use Perl regular expressions to match balanced text?" 4 +.IX Xref "regex, matching balanced test regexp, matching balanced test regular expression, matching balanced test possessive PARNO Text::Balanced Regexp::Common backtracking recursion" +.IX Item "Can I use Perl regular expressions to match balanced text?" +.IP "What does it mean that regexes are greedy? How can I get around it?" 4 +.IX Xref "greedy greediness" +.IX Item "What does it mean that regexes are greedy? How can I get around it?" +.IP "How do I process each word on each line?" 4 +.IX Xref "word" +.IX Item "How do I process each word on each line?" +.IP "How can I print out a word-frequency or line-frequency summary?" 4 +.IX Item "How can I print out a word-frequency or line-frequency summary?" +.IP "How can I do approximate matching?" 4 +.IX Xref "match, approximate matching, approximate" +.IX Item "How can I do approximate matching?" +.IP "How do I efficiently match many regular expressions at once?" 4 +.IX Xref "regex, efficiency regexp, efficiency regular expression, efficiency" +.IX Item "How do I efficiently match many regular expressions at once?" +.ie n .IP "Why don't word-boundary searches with ""\eb"" work for me?" 4 +.el .IP "Why don't word-boundary searches with \f(CW\eb\fR work for me?" 4 +.IX Xref "\\b" +.IX Item "Why don't word-boundary searches with b work for me?" +.IP "Why does using $&, $`, or $' slow my program down?" 4 +.IX Xref "$MATCH $& $POSTMATCH $' $PREMATCH $`" +.IX Item "Why does using $&, $`, or $' slow my program down?" +.ie n .IP "What good is ""\eG"" in a regular expression?" 4 +.el .IP "What good is \f(CW\eG\fR in a regular expression?" 4 +.IX Xref "\\G" +.IX Item "What good is G in a regular expression?" +.IP "Are Perl regexes DFAs or NFAs? Are they POSIX compliant?" 4 +.IX Xref "DFA NFA POSIX" +.IX Item "Are Perl regexes DFAs or NFAs? Are they POSIX compliant?" +.IP "What's wrong with using grep in a void context?" 4 +.IX Xref "grep" +.IX Item "What's wrong with using grep in a void context?" +.IP "How can I match strings with multibyte characters?" 4 +.IX Xref "regex, and multibyte characters regexp, and multibyte characters regular expression, and multibyte characters martian encoding, Martian" +.IX Item "How can I match strings with multibyte characters?" +.IP "How do I match a regular expression that's in a variable?" 4 +.IX Xref "regex, in variable eval regex quotemeta \\Q, regex \\E, regex qr" +.IX Item "How do I match a regular expression that's in a variable?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq7 \- General Perl Language Issues" +.IX Subsection "perlfaq7 - General Perl Language Issues" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Can I get a BNF/yacc/RE for the Perl language?" 4 +.IX Item "Can I get a BNF/yacc/RE for the Perl language?" +.IP "What are all these $@%&* punctuation signs, and how do I know when to use them?" 4 +.IX Item "What are all these $@%&* punctuation signs, and how do I know when to use them?" +.IP "Do I always/never have to quote my strings or use semicolons and commas?" 4 +.IX Item "Do I always/never have to quote my strings or use semicolons and commas?" +.IP "How do I skip some return values?" 4 +.IX Item "How do I skip some return values?" +.IP "How do I temporarily block warnings?" 4 +.IX Item "How do I temporarily block warnings?" +.IP "What's an extension?" 4 +.IX Item "What's an extension?" +.IP "Why do Perl operators have different precedence than C operators?" 4 +.IX Item "Why do Perl operators have different precedence than C operators?" +.IP "How do I declare/create a structure?" 4 +.IX Item "How do I declare/create a structure?" +.IP "How do I create a module?" 4 +.IX Item "How do I create a module?" +.IP "How do I adopt or take over a module already on CPAN?" 4 +.IX Item "How do I adopt or take over a module already on CPAN?" +.IP "How do I create a class?" 4 +.IX Xref "class, creation package" +.IX Item "How do I create a class?" +.IP "How can I tell if a variable is tainted?" 4 +.IX Item "How can I tell if a variable is tainted?" +.IP "What's a closure?" 4 +.IX Item "What's a closure?" +.IP "What is variable suicide and how can I prevent it?" 4 +.IX Item "What is variable suicide and how can I prevent it?" +.IP "How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regex}?" 4 +.IX Item "How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regex}?" +.PD +Passing Variables and Functions, Passing Filehandles, Passing Regexes, +Passing Methods +.IP "How do I create a static variable?" 4 +.IX Item "How do I create a static variable?" +.PD 0 +.IP "What's the difference between dynamic and lexical (static) scoping? Between \fBlocal()\fR and \fBmy()\fR?" 4 +.IX Item "What's the difference between dynamic and lexical (static) scoping? Between local() and my()?" +.IP "How can I access a dynamic variable while a similarly named lexical is in scope?" 4 +.IX Item "How can I access a dynamic variable while a similarly named lexical is in scope?" +.IP "What's the difference between deep and shallow binding?" 4 +.IX Item "What's the difference between deep and shallow binding?" +.IP "Why doesn't ""my($foo) = <$fh>;"" work right?" 4 +.IX Item "Why doesn't ""my($foo) = <$fh>;"" work right?" +.IP "How do I redefine a builtin function, operator, or method?" 4 +.IX Item "How do I redefine a builtin function, operator, or method?" +.IP "What's the difference between calling a function as &foo and \fBfoo()\fR?" 4 +.IX Item "What's the difference between calling a function as &foo and foo()?" +.IP "How do I create a switch or case statement?" 4 +.IX Item "How do I create a switch or case statement?" +.IP "How can I catch accesses to undefined variables, functions, or methods?" 4 +.IX Item "How can I catch accesses to undefined variables, functions, or methods?" +.IP "Why can't a method included in this same file be found?" 4 +.IX Item "Why can't a method included in this same file be found?" +.IP "How can I find out my current or calling package?" 4 +.IX Item "How can I find out my current or calling package?" +.IP "How can I comment out a large block of Perl code?" 4 +.IX Item "How can I comment out a large block of Perl code?" +.IP "How do I clear a package?" 4 +.IX Item "How do I clear a package?" +.IP "How can I use a variable as a variable name?" 4 +.IX Item "How can I use a variable as a variable name?" +.IP "What does ""bad interpreter"" mean?" 4 +.IX Item "What does ""bad interpreter"" mean?" +.IP "Do I need to recompile XS modules when there is a change in the C library?" 4 +.IX Item "Do I need to recompile XS modules when there is a change in the C library?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq8 \- System Interaction" +.IX Subsection "perlfaq8 - System Interaction" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How do I find out which operating system I'm running under?" 4 +.IX Item "How do I find out which operating system I'm running under?" +.IP "How come \fBexec()\fR doesn't return?" 4 +.IX Xref "exec system fork open pipe" +.IX Item "How come exec() doesn't return?" +.IP "How do I do fancy stuff with the keyboard/screen/mouse?" 4 +.IX Item "How do I do fancy stuff with the keyboard/screen/mouse?" +.PD +Keyboard, Screen, Mouse +.IP "How do I print something out in color?" 4 +.IX Item "How do I print something out in color?" +.PD 0 +.IP "How do I read just one key without waiting for a return key?" 4 +.IX Item "How do I read just one key without waiting for a return key?" +.IP "How do I check whether input is ready on the keyboard?" 4 +.IX Item "How do I check whether input is ready on the keyboard?" +.IP "How do I clear the screen?" 4 +.IX Item "How do I clear the screen?" +.IP "How do I get the screen size?" 4 +.IX Item "How do I get the screen size?" +.IP "How do I ask the user for a password?" 4 +.IX Item "How do I ask the user for a password?" +.IP "How do I read and write the serial port?" 4 +.IX Item "How do I read and write the serial port?" +.PD +lockfiles, open mode, end of line, flushing output, non-blocking input +.IP "How do I decode encrypted password files?" 4 +.IX Item "How do I decode encrypted password files?" +.PD 0 +.IP "How do I start a process in the background?" 4 +.IX Item "How do I start a process in the background?" +.PD +STDIN, STDOUT, and STDERR are shared, Signals, Zombies +.IP "How do I trap control characters/signals?" 4 +.IX Item "How do I trap control characters/signals?" +.PD 0 +.IP "How do I modify the shadow password file on a Unix system?" 4 +.IX Item "How do I modify the shadow password file on a Unix system?" +.IP "How do I set the time and date?" 4 +.IX Item "How do I set the time and date?" +.IP "How can I \fBsleep()\fR or \fBalarm()\fR for under a second?" 4 +.IX Xref "Time::HiRes BSD::Itimer sleep select" +.IX Item "How can I sleep() or alarm() for under a second?" +.IP "How can I measure time under a second?" 4 +.IX Xref "Time::HiRes BSD::Itimer sleep select" +.IX Item "How can I measure time under a second?" +.IP "How can I do an \fBatexit()\fR or \fBsetjmp()\fR/\fBlongjmp()\fR? (Exception handling)" 4 +.IX Item "How can I do an atexit() or setjmp()/longjmp()? (Exception handling)" +.IP "Why doesn't my sockets program work under System V (Solaris)? What does the error message ""Protocol not supported"" mean?" 4 +.IX Item "Why doesn't my sockets program work under System V (Solaris)? What does the error message ""Protocol not supported"" mean?" +.IP "How can I call my system's unique C functions from Perl?" 4 +.IX Item "How can I call my system's unique C functions from Perl?" +.IP "Where do I get the include files to do \fBioctl()\fR or \fBsyscall()\fR?" 4 +.IX Item "Where do I get the include files to do ioctl() or syscall()?" +.IP "Why do setuid perl scripts complain about kernel problems?" 4 +.IX Item "Why do setuid perl scripts complain about kernel problems?" +.IP "How can I open a pipe both to and from a command?" 4 +.IX Item "How can I open a pipe both to and from a command?" +.IP "Why can't I get the output of a command with \fBsystem()\fR?" 4 +.IX Item "Why can't I get the output of a command with system()?" +.IP "How can I capture STDERR from an external command?" 4 +.IX Item "How can I capture STDERR from an external command?" +.IP "Why doesn't \fBopen()\fR return an error when a pipe open fails?" 4 +.IX Item "Why doesn't open() return an error when a pipe open fails?" +.IP "What's wrong with using backticks in a void context?" 4 +.IX Item "What's wrong with using backticks in a void context?" +.IP "How can I call backticks without shell processing?" 4 +.IX Item "How can I call backticks without shell processing?" +.IP "Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?" 4 +.IX Item "Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?" +.IP "How can I convert my shell script to perl?" 4 +.IX Item "How can I convert my shell script to perl?" +.IP "Can I use perl to run a telnet or ftp session?" 4 +.IX Item "Can I use perl to run a telnet or ftp session?" +.IP "How can I write expect in Perl?" 4 +.IX Item "How can I write expect in Perl?" +.IP "Is there a way to hide perl's command line from programs such as ""ps""?" 4 +.IX Item "Is there a way to hide perl's command line from programs such as ""ps""?" +.IP "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?" 4 +.IX 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?" +.PD +Unix +.IP "How do I close a process's filehandle without waiting for it to complete?" 4 +.IX Item "How do I close a process's filehandle without waiting for it to complete?" +.PD 0 +.IP "How do I fork a daemon process?" 4 +.IX Item "How do I fork a daemon process?" +.IP "How do I find out if I'm running interactively or not?" 4 +.IX Item "How do I find out if I'm running interactively or not?" +.IP "How do I timeout a slow event?" 4 +.IX Item "How do I timeout a slow event?" +.IP "How do I set CPU limits?" 4 +.IX Xref "BSD::Resource limit CPU" +.IX Item "How do I set CPU limits?" +.IP "How do I avoid zombies on a Unix system?" 4 +.IX Item "How do I avoid zombies on a Unix system?" +.IP "How do I use an SQL database?" 4 +.IX Item "How do I use an SQL database?" +.IP "How do I make a \fBsystem()\fR exit on control-C?" 4 +.IX Item "How do I make a system() exit on control-C?" +.IP "How do I open a file without blocking?" 4 +.IX Item "How do I open a file without blocking?" +.IP "How do I tell the difference between errors from the shell and perl?" 4 +.IX Item "How do I tell the difference between errors from the shell and perl?" +.IP "How do I install a module from CPAN?" 4 +.IX Item "How do I install a module from CPAN?" +.IP "What's the difference between require and use?" 4 +.IX Item "What's the difference between require and use?" +.IP "How do I keep my own module/library directory?" 4 +.IX Item "How do I keep my own module/library directory?" +.IP "How do I add the directory my program lives in to the module/library search path?" 4 +.IX Item "How do I add the directory my program lives in to the module/library search path?" +.IP "How do I add a directory to my include path (@INC) at runtime?" 4 +.IX Item "How do I add a directory to my include path (@INC) at runtime?" +.PD +the \f(CW\*(C`PERLLIB\*(C'\fR environment variable, the \f(CW\*(C`PERL5LIB\*(C'\fR environment variable, +the \f(CW\*(C`perl \-Idir\*(C'\fR command line flag, the \f(CW\*(C`lib\*(C'\fR pragma:, the local::lib +module: +.IP "Where are modules installed?" 4 +.IX Item "Where are modules installed?" +.PD 0 +.IP "What is socket.ph and where do I get it?" 4 +.IX Item "What is socket.ph and where do I get it?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlfaq9 \- Web, Email and Networking" +.IX Subsection "perlfaq9 - Web, Email and Networking" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Should I use a web framework?" 4 +.IX Item "Should I use a web framework?" +.IP "Which web framework should I use?" 4 +.IX Xref "framework CGI.pm CGI Catalyst Dancer" +.IX Item "Which web framework should I use?" +.PD +Catalyst, Dancer2, Mojolicious, Web::Simple +.IP "What is Plack and PSGI?" 4 +.IX Item "What is Plack and PSGI?" +.PD 0 +.IP "How do I remove HTML from a string?" 4 +.IX Item "How do I remove HTML from a string?" +.IP "How do I extract URLs?" 4 +.IX Item "How do I extract URLs?" +.IP "How do I fetch an HTML file?" 4 +.IX Item "How do I fetch an HTML file?" +.IP "How do I automate an HTML form submission?" 4 +.IX Item "How do I automate an HTML form submission?" +.IP "How do I decode or create those %\-encodings on the web?" 4 +.IX Xref "URI URI::Escape RFC 2396" +.IX Item "How do I decode or create those %-encodings on the web?" +.IP "How do I redirect to another page?" 4 +.IX Item "How do I redirect to another page?" +.IP "How do I put a password on my web pages?" 4 +.IX Item "How do I put a password on my web pages?" +.IP "How do I make sure users can't enter values into a form that causes my CGI script to do bad things?" 4 +.IX Item "How do I make sure users can't enter values into a form that causes my CGI script to do bad things?" +.IP "How do I parse a mail header?" 4 +.IX Item "How do I parse a mail header?" +.IP "How do I check a valid mail address?" 4 +.IX Item "How do I check a valid mail address?" +.IP "How do I decode a MIME/BASE64 string?" 4 +.IX Item "How do I decode a MIME/BASE64 string?" +.IP "How do I find the user's mail address?" 4 +.IX Item "How do I find the user's mail address?" +.IP "How do I send email?" 4 +.IX Item "How do I send email?" +.PD +Email::Sender::Transport::Sendmail, Email::Sender::Transport::SMTP +.IP "How do I use MIME to make an attachment to a mail message?" 4 +.IX Item "How do I use MIME to make an attachment to a mail message?" +.PD 0 +.IP "How do I read email?" 4 +.IX Item "How do I read email?" +.IP "How do I find out my hostname, domainname, or IP address?" 4 +.IX Xref "hostname, domainname, IP address, host, domain, hostfqdn, inet_ntoa, gethostbyname, Socket, Net::Domain, Sys::Hostname" +.IX Item "How do I find out my hostname, domainname, or IP address?" +.IP "How do I fetch/put an (S)FTP file?" 4 +.IX Item "How do I fetch/put an (S)FTP file?" +.IP "How can I do RPC in Perl?" 4 +.IX Item "How can I do RPC in Perl?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "perlsyn \- Perl syntax" +.IX Subsection "perlsyn - Perl syntax" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP Declarations 4 +.IX Xref "declaration undef undefined uninitialized" +.IX Item "Declarations" +.IP Comments 4 +.IX Xref "comment #" +.IX Item "Comments" +.IP "Simple Statements" 4 +.IX Xref "statement semicolon expression ;" +.IX Item "Simple Statements" +.IP "Statement Modifiers" 4 +.IX Xref "statement modifier modifier if unless while until when foreach for" +.IX Item "Statement Modifiers" +.IP "Compound Statements" 4 +.IX Xref "statement, compound block bracket, curly curly bracket brace { } if unless given while until foreach for continue" +.IX Item "Compound Statements" +.IP "Loop Control" 4 +.IX Xref "loop control loop, control next last redo continue" +.IX Item "Loop Control" +.IP "For Loops" 4 +.IX Xref "for foreach" +.IX Item "For Loops" +.IP "Foreach Loops" 4 +.IX Xref "for foreach" +.IX Item "Foreach Loops" +.IP "Try Catch Exception Handling" 4 +.IX Xref "try catch finally" +.IX Item "Try Catch Exception Handling" +.IP "Basic BLOCKs" 4 +.IX Xref "block" +.IX Item "Basic BLOCKs" +.IP "defer blocks" 4 +.IX Xref "defer" +.IX Item "defer blocks" +.IP "Switch Statements" 4 +.IX Item "Switch Statements" +.IP Goto 4 +.IX Xref "goto" +.IX Item "Goto" +.IP "The Ellipsis Statement" 4 +.IX Xref "... ... statement ellipsis operator elliptical statement unimplemented statement unimplemented operator yada-yada yada-yada operator ... operator whatever operator triple-dot operator" +.IX Item "The Ellipsis Statement" +.IP "PODs: Embedded Documentation" 4 +.IX Xref "POD documentation" +.IX Item "PODs: Embedded Documentation" +.IP "Plain Old Comments (Not!)" 4 +.IX Xref "comment line # preprocessor eval" +.IX Item "Plain Old Comments (Not!)" +.IP "Experimental Details on given and when" 4 +.IX Item "Experimental Details on given and when" +.PD +1, 2, 3, 4, 5, 6, 7, 8, 9, 10 +.RE +.RS 4 +.RE +.SS "perldata \- Perl data types" +.IX Subsection "perldata - Perl data types" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Variable names" 4 +.IX Xref "variable, name variable name data type type" +.IX Item "Variable names" +.IP "Identifier parsing" 4 +.IX Xref "identifiers" +.IX Item "Identifier parsing" +.IP Context 4 +.IX Xref "context scalar context list context" +.IX Item "Context" +.IP "Scalar values" 4 +.IX Xref "scalar number string reference" +.IX Item "Scalar values" +.IP "Scalar value constructors" 4 +.IX Xref "scalar, literal scalar, constant" +.IX Item "Scalar value constructors" +.IP "List value constructors" 4 +.IX Xref "list" +.IX Item "List value constructors" +.IP Subscripts 4 +.IX Item "Subscripts" +.IP "Multi-dimensional array emulation" 4 +.IX Item "Multi-dimensional array emulation" +.IP Slices 4 +.IX Xref "slice array, slice hash, slice" +.IX Item "Slices" +.IP "Typeglobs and Filehandles" 4 +.IX Xref "typeglob filehandle *" +.IX Item "Typeglobs and Filehandles" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlop \- Perl operators and precedence" +.IX Subsection "perlop - Perl operators and precedence" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Operator Precedence and Associativity" 4 +.IX Xref "operator, precedence precedence associativity" +.IX Item "Operator Precedence and Associativity" +.IP "Terms and List Operators (Leftward)" 4 +.IX Xref "list operator operator, list term" +.IX Item "Terms and List Operators (Leftward)" +.IP "The Arrow Operator" 4 +.IX Xref "arrow dereference ->" +.IX Item "The Arrow Operator" +.IP "Auto-increment and Auto-decrement" 4 +.IX Xref "increment auto-increment ++ decrement auto-decrement --" +.IX Item "Auto-increment and Auto-decrement" +.IP Exponentiation 4 +.IX Xref "** exponentiation power" +.IX Item "Exponentiation" +.IP "Symbolic Unary Operators" 4 +.IX Xref "unary operator operator, unary" +.IX Item "Symbolic Unary Operators" +.IP "Binding Operators" 4 +.IX Xref "binding operator, binding =~ !~" +.IX Item "Binding Operators" +.IP "Multiplicative Operators" 4 +.IX Xref "operator, multiplicative" +.IX Item "Multiplicative Operators" +.IP "Additive Operators" 4 +.IX Xref "operator, additive" +.IX Item "Additive Operators" +.IP "Shift Operators" 4 +.IX Xref "shift operator operator, shift << >> right shift left shift bitwise shift shl shr shift, right shift, left" +.IX Item "Shift Operators" +.IP "Named Unary Operators" 4 +.IX Xref "operator, named unary" +.IX Item "Named Unary Operators" +.IP "Relational Operators" 4 +.IX Xref "relational operator operator, relational" +.IX Item "Relational Operators" +.IP "Equality Operators" 4 +.IX Xref "equality equal equals operator, equality" +.IX Item "Equality Operators" +.IP "Class Instance Operator" 4 +.IX Xref "isa operator" +.IX Item "Class Instance Operator" +.IP "Smartmatch Operator" 4 +.IX Item "Smartmatch Operator" +.PD +1. Empty hashes or arrays match, 2. That is, each element smartmatches the +element of the same index in the other array.[3], 3. If a circular +reference is found, fall back to referential equality, 4. Either an actual +number, or a string that looks like one +.IP "Bitwise And" 4 +.IX Xref "operator, bitwise, and bitwise and &" +.IX Item "Bitwise And" +.PD 0 +.IP "Bitwise Or and Exclusive Or" 4 +.IX Xref "operator, bitwise, or bitwise or | operator, bitwise, xor bitwise xor ^" +.IX Item "Bitwise Or and Exclusive Or" +.IP "C\-style Logical And" 4 +.IX Xref "&& logical and operator, logical, and" +.IX Item "C-style Logical And" +.IP "C\-style Logical Or" 4 +.IX Xref "|| operator, logical, or" +.IX Item "C-style Logical Or" +.IP "Logical Defined-Or" 4 +.IX Xref "operator, logical, defined-or" +.IX Item "Logical Defined-Or" +.IP "Range Operators" 4 +.IX Xref "operator, range range .. ..." +.IX Item "Range Operators" +.IP "Conditional Operator" 4 +.IX Xref "operator, conditional operator, ternary ternary ?:" +.IX Item "Conditional Operator" +.IP "Assignment Operators" 4 +.IX Xref "assignment operator, assignment = **= += *= &= <<= &&= -= = |= >>= ||= = .= %= ^= x= &.= |.= ^.=" +.IX Item "Assignment Operators" +.IP "Comma Operator" 4 +.IX Xref "comma operator, comma ," +.IX Item "Comma Operator" +.IP "List Operators (Rightward)" 4 +.IX Xref "operator, list, rightward list operator" +.IX Item "List Operators (Rightward)" +.IP "Logical Not" 4 +.IX Xref "operator, logical, not not" +.IX Item "Logical Not" +.IP "Logical And" 4 +.IX Xref "operator, logical, and and" +.IX Item "Logical And" +.IP "Logical or and Exclusive Or" 4 +.IX Xref "operator, logical, or operator, logical, xor operator, logical, exclusive or or xor" +.IX Item "Logical or and Exclusive Or" +.IP "C Operators Missing From Perl" 4 +.IX Xref "operator, missing from perl & * typecasting (TYPE)" +.IX Item "C Operators Missing From Perl" +.PD +unary &, unary *, (TYPE) +.IP "Quote and Quote-like Operators" 4 +.IX Xref "operator, quote operator, quote-like q qq qx qw m qr s tr ' '' "" """" ` `` << escape sequence escape" +.IX Item "Quote and Quote-like Operators" +[1], [2], [3], [4], [5], [6], [7], [8] +.IP "Regexp Quote-Like Operators" 4 +.IX Xref "operator, regexp" +.IX Item "Regexp Quote-Like Operators" +\&\f(CW\*(C`qr/\fR\f(CISTRING\fR\f(CW/msixpodualn\*(C'\fR , +\&\f(CW\*(C`m/\fR\f(CIPATTERN\fR\f(CW/msixpodualngc\*(C'\fR + + , \f(CW\*(C`/\fR\f(CIPATTERN\fR\f(CW/msixpodualngc\*(C'\fR, The empty pattern \f(CW\*(C`//\*(C'\fR, +Matching in list context, \f(CW\*(C`\eG \fR\f(CIassertion\fR\f(CW\*(C'\fR, \f(CW\*(C`m?\fR\f(CIPATTERN\fR\f(CW?msixpodualngc\*(C'\fR + , +\&\f(CW\*(C`s/\fR\f(CIPATTERN\fR\f(CW/\fR\f(CIREPLACEMENT\fR\f(CW/msixpodualngcer\*(C'\fR +.IX Xref "qr i m o s x p m operator, match regexp, options regexp regex, options regex m s i x p o g c ? operator, match-once s substitute substitution replace regexp, replace regexp, substitute m s i x p o g c e r" +.IP "Quote-Like Operators" 4 +.IX Xref "operator, quote-like" +.IX Item "Quote-Like Operators" +\&\f(CW\*(C`q/\fR\f(CISTRING\fR\f(CW/\*(C'\fR , \f(CW\*(Aq\fR\f(CISTRING\fR\f(CW\*(Aq\fR, +\&\f(CW\*(C`qq/\fR\f(CISTRING\fR\f(CW/\*(C'\fR , \f(CW"\fR\f(CISTRING\fR\f(CW"\fR, +\&\f(CW\*(C`qx/\fR\f(CISTRING\fR\f(CW/\*(C'\fR , \f(CW\`\fR\f(CISTRING\fR\f(CW\`\fR, +\&\f(CW\*(C`qw/\fR\f(CISTRING\fR\f(CW/\*(C'\fR , +\&\f(CW\*(C`tr/\fR\f(CISEARCHLIST\fR\f(CW/\fR\f(CIREPLACEMENTLIST\fR\f(CW/cdsr\*(C'\fR + , \f(CW\*(C`y/\fR\f(CISEARCHLIST\fR\f(CW/\fR\f(CIREPLACEMENTLIST\fR\f(CW/cdsr\*(C'\fR, \f(CW\*(C`<<\fR\f(CIEOF\fR\f(CW\*(C'\fR , Double Quotes, +Single Quotes, Backticks, Indented Here-docs +.IX Xref "q quote, single ' '' qq quote, double "" """" qx ` `` backtick qw quote, list quote, words tr y transliterate c d s here-doc heredoc here-document <<" +.IP "Gory details of parsing quoted constructs" 4 +.IX Xref "quote, gory details" +.IX Item "Gory details of parsing quoted constructs" +Finding the end, Interpolation , \f(CW\*(C`<<\*(AqEOF\*(Aq\*(C'\fR, \f(CW\*(C`m\*(Aq\*(Aq\*(C'\fR, the +pattern of \f(CW\*(C`s\*(Aq\*(Aq\*(Aq\*(C'\fR, \f(CW\*(Aq\*(Aq\fR, \f(CW\*(C`q//\*(C'\fR, \f(CW\*(C`tr\*(Aq\*(Aq\*(Aq\*(C'\fR, \f(CW\*(C`y\*(Aq\*(Aq\*(Aq\*(C'\fR, the replacement of +\&\f(CW\*(C`s\*(Aq\*(Aq\*(Aq\*(C'\fR, \f(CW\*(C`tr///\*(C'\fR, \f(CW\*(C`y///\*(C'\fR, \f(CW""\fR, \f(CW\`\`\fR, \f(CW\*(C`qq//\*(C'\fR, \f(CW\*(C`qx//\*(C'\fR, \f(CW\*(C`<file*glob>\*(C'\fR, \f(CW\*(C`<<"EOF"\*(C'\fR, The replacement of \f(CW\*(C`s///\*(C'\fR, \f(CW\*(C`RE\*(C'\fR in \f(CW\*(C`m?RE?\*(C'\fR, \f(CW\*(C`/RE/\*(C'\fR, +\&\f(CW\*(C`m/RE/\*(C'\fR, \f(CW\*(C`s/RE/foo/\*(C'\fR,, Parsing regular expressions , +Optimization of regular expressions +.IX Xref "interpolation regexp, parse regexp, optimization" +.IP "I/O Operators" 4 +.IX Xref "operator, i o operator, io io while filehandle <> <<>> @ARGV" +.IX Item "I/O Operators" +.PD 0 +.IP "Constant Folding" 4 +.IX Xref "constant folding folding" +.IX Item "Constant Folding" +.IP No-ops 4 +.IX Xref "no-op nop" +.IX Item "No-ops" +.IP "Bitwise String Operators" 4 +.IX Xref "operator, bitwise, string &. |. ^. ~." +.IX Item "Bitwise String Operators" +.IP "Integer Arithmetic" 4 +.IX Xref "integer" +.IX Item "Integer Arithmetic" +.IP "Floating-point Arithmetic" 4 +.IX Item "Floating-point Arithmetic" +.IP "Bigger Numbers" 4 +.IX Xref "number, arbitrary precision" +.IX Item "Bigger Numbers" +.RE +.RS 4 +.RE +.PD +.SS "perlsub \- Perl subroutines" +.IX Subsection "perlsub - Perl subroutines" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +documented later in this document, documented in perlmod, documented in +perlobj, documented in perltie, documented in PerlIO::via, +documented in perlfunc, documented in UNIVERSAL, documented in +perldebguts, undocumented, used internally by the overload feature +.RS 4 +.IP Signatures 4 +.IX Item "Signatures" +.PD 0 +.IP "Private Variables via \fBmy()\fR" 4 +.IX Xref "my variable, lexical lexical lexical variable scope, lexical lexical scope attributes, my" +.IX Item "Private Variables via my()" +.IP "Persistent Private Variables" 4 +.IX Xref "state state variable static variable, persistent variable, static closure" +.IX Item "Persistent Private Variables" +.IP "Temporary Values via \fBlocal()\fR" 4 +.IX Xref "local scope, dynamic dynamic scope variable, local variable, temporary" +.IX Item "Temporary Values via local()" +.IP "Lvalue subroutines" 4 +.IX Xref "lvalue subroutine, lvalue" +.IX Item "Lvalue subroutines" +.IP "Lexical Subroutines" 4 +.IX Xref "my sub state sub our sub subroutine, lexical" +.IX Item "Lexical Subroutines" +.IP "Passing Symbol Table Entries (typeglobs)" 4 +.IX Xref "typeglob *" +.IX Item "Passing Symbol Table Entries (typeglobs)" +.IP "When to Still Use \fBlocal()\fR" 4 +.IX Xref "local variable, local" +.IX Item "When to Still Use local()" +.IP "Pass by Reference" 4 +.IX Xref "pass by reference pass-by-reference reference" +.IX Item "Pass by Reference" +.IP Prototypes 4 +.IX Xref "prototype subroutine, prototype" +.IX Item "Prototypes" +.IP "Constant Functions" 4 +.IX Xref "constant" +.IX Item "Constant Functions" +.IP "Overriding Built-in Functions" 4 +.IX Xref "built-in override CORE CORE::GLOBAL" +.IX Item "Overriding Built-in Functions" +.IP Autoloading 4 +.IX Xref "autoloading AUTOLOAD" +.IX Item "Autoloading" +.IP "Subroutine Attributes" 4 +.IX Xref "attribute subroutine, attribute attrs" +.IX Item "Subroutine Attributes" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlfunc \- Perl builtin functions" +.IX Subsection "perlfunc - Perl builtin functions" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Perl Functions by Category" 4 +.IX Xref "function" +.IX Item "Perl Functions by Category" +.PD +Functions for SCALARs or strings , Regular +expressions and pattern matching , +Numeric functions , +Functions for real \f(CW@ARRAYs\fR , Functions for list data , +Functions for real \f(CW%HASHes\fR , 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-orientation + , Low-level socket functions , System V +interprocess communication functions + , Fetching user and group info + , Fetching +network info +, Time-related functions , Non-function keywords +.IX Xref "scalar string character regular expression regex regexp numeric number trigonometric trigonometry array list hash I O input output dbm file filehandle directory pipe link symlink control flow process pid process id module object class package socket sock IPC System V semaphore shared memory memory message user group password uid gid passwd etc passwd network protocol host hostname IP address service time date" +.IP Portability 4 +.IX Xref "portability Unix portable" +.IX Item "Portability" +.PD 0 +.IP "Alphabetical Listing of Perl Functions" 4 +.IX Item "Alphabetical Listing of Perl Functions" +.PD +\&\-\fIX\fR FILEHANDLE + +, \-\fIX\fR EXPR, +\&\-\fIX\fR DIRHANDLE, \-\fIX\fR, 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, Bless the referred-to item into a specific package (recommended +form):, Bless the referred-to item into package \f(CW\*(C`main\*(C'\fR:, Bless the +referred-to item into the current package (not inheritable):, break, caller +EXPR , caller, chdir EXPR + , chdir FILEHANDLE, chdir DIRHANDLE, +chdir, chmod LIST , chomp VARIABLE + , chomp( LIST ), chomp, +chop VARIABLE , chop( LIST ), chop, chown LIST + , chr NUMBER , chr, +chroot FILENAME , chroot, class NAMESPACE, class NAMESPACE +VERSION, class NAMESPACE BLOCK, class NAMESPACE VERSION BLOCK, close +FILEHANDLE , close, closedir DIRHANDLE , connect +SOCKET,NAME , continue BLOCK , continue, cos EXPR + , cos, crypt PLAINTEXT,SALT + + , dbmclose HASH , dbmopen +HASH,DBNAME,MASK , defined EXPR + , defined, delete EXPR , die LIST + , do BLOCK +, do EXPR , dump LABEL , dump EXPR, +dump, each HASH , each ARRAY , +eof FILEHANDLE , eof (), eof, eval EXPR + +, eval BLOCK, eval, String eval, Under the +\&\f(CW"unicode_eval"\fR feature, Outside the \f(CW"unicode_eval"\fR feature, If upgraded, \f(CW$v\fR will +be \f(CW"\exc4\ex80"\fR (i.e., the \f(CW\*(C`use utf8\*(C'\fR has no effect.), If non-upgraded, +\&\f(CW$v\fR will be \f(CW"\ex{100}"\fR, Block eval, evalbytes EXPR , +evalbytes, exec LIST , exec PROGRAM LIST, exists EXPR + , exit EXPR , +exit, exp EXPR , exp, +fc EXPR , fc, fcntl +FILEHANDLE,FUNCTION,SCALAR , _\|_FILE_\|_ , field VARNAME +, fileno FILEHANDLE , fileno DIRHANDLE, 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 + , gmtime, goto LABEL , +goto EXPR, goto &NAME, grep BLOCK LIST , grep EXPR,LIST, hex EXPR + , hex, import LIST , index +STR,SUBSTR,POSITION , index STR,SUBSTR, int +EXPR , int, ioctl +FILEHANDLE,FUNCTION,SCALAR , join EXPR,LIST , keys HASH + , keys ARRAY, kill SIGNAL, LIST, kill SIGNAL +, last LABEL , last EXPR, last, lc EXPR +, lc, If \f(CW\*(C`use bytes\*(C'\fR is in effect:, Otherwise, if \f(CW\*(C`use +locale\*(C'\fR for \f(CW\*(C`LC_CTYPE\*(C'\fR is in effect:, Otherwise, If EXPR has the UTF8 flag +set:, Otherwise, if \f(CW\*(C`use feature \*(Aqunicode_strings\*(Aq\*(C'\fR or \f(CWuse locale +\&\*(Aq:not_characters\*(Aq\fR is in effect:, Otherwise:, lcfirst EXPR +, lcfirst, length EXPR , length, _\|_LINE_\|_ +, link OLDFILE,NEWFILE , listen SOCKET,QUEUESIZE +, local EXPR , localtime EXPR , +localtime, lock THING , log EXPR +, log, lstat FILEHANDLE , lstat EXPR, lstat DIRHANDLE, +lstat, m//, map BLOCK LIST , map EXPR,LIST, method NAME BLOCK +, method NAME : ATTRS BLOCK, mkdir FILENAME,MODE +, mkdir FILENAME, mkdir, msgctl ID,CMD,ARG , +msgget KEY,FLAGS , msgrcv ID,VAR,SIZE,TYPE,FLAGS , msgsnd +ID,MSG,FLAGS , my VARLIST , my TYPE VARLIST, my VARLIST : +ATTRS, my TYPE VARLIST : ATTRS, next LABEL , next EXPR, +next, no MODULE VERSION LIST , no MODULE +VERSION, no MODULE LIST, no MODULE, no VERSION, oct EXPR + , oct, open FILEHANDLE,MODE,EXPR + , open FILEHANDLE,MODE,EXPR,LIST, +open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE,EXPR, open FILEHANDLE, +Working with files, Simple examples, About filehandles, About modes, +Checking the return value, Specifying I/O layers in MODE, Using \f(CW\*(C`undef\*(C'\fR +for temporary files, Opening a filehandle into an in-memory scalar, Opening +a filehandle into a command, Duping filehandles, Legacy usage, Specifying +mode and filename as a single argument, Calling \f(CW\*(C`open\*(C'\fR with one argument +via global variables, Assigning a filehandle to a bareword, Other +considerations, Automatic filehandle closure, Automatic pipe flushing, +Direct versus by-reference assignment of filehandles, Whitespace and +special characters in the filename argument, Invoking C\-style \f(CW\*(C`open\*(C'\fR, +Portability issues, opendir DIRHANDLE,EXPR , ord EXPR +, ord, our VARLIST , our TYPE VARLIST, our +VARLIST : ATTRS, our TYPE VARLIST : ATTRS, pack TEMPLATE,LIST , +package NAMESPACE, package NAMESPACE VERSION + , package NAMESPACE BLOCK, package NAMESPACE VERSION +BLOCK , _\|_PACKAGE_\|_ +, pipe READHANDLE,WRITEHANDLE , pop ARRAY +, pop, pos SCALAR , pos, print FILEHANDLE +LIST , print FILEHANDLE, print LIST, print, printf FILEHANDLE +FORMAT, LIST , printf FILEHANDLE, printf FORMAT, LIST, printf, +prototype FUNCTION , prototype, push ARRAY,LIST +, q/STRING/, qq/STRING/, qw/STRING/, qx/STRING/, qr/STRING/, +quotemeta EXPR , quotemeta, rand EXPR +, rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET , read FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE , +readline EXPR, readline , readlink EXPR +, readlink, readpipe EXPR, readpipe , recv +SOCKET,SCALAR,LENGTH,FLAGS , redo LABEL , redo EXPR, 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///, say FILEHANDLE LIST , say +FILEHANDLE, say LIST, say, scalar EXPR , seek +FILEHANDLE,POSITION,WHENCE , +seekdir DIRHANDLE,POS , select FILEHANDLE , select, select RBITS,WBITS,EBITS,TIMEOUT , semctl +ID,SEMNUM,CMD,ARG , semget KEY,NSEMS,FLAGS , semop +KEY,OPSTRING , send SOCKET,MSG,FLAGS,TO , send +SOCKET,MSG,FLAGS, setpgrp PID,PGRP , setpriority +WHICH,WHO,PRIORITY , setsockopt +SOCKET,LEVEL,OPTNAME,OPTVAL , shift ARRAY , shift, +shmctl ID,CMD,ARG , shmget KEY,SIZE,FLAGS , shmread +ID,VAR,POS,SIZE , shmwrite ID,STRING,POS,SIZE, +shutdown SOCKET,HOW , sin EXPR +, sin, sleep EXPR , sleep, socket +SOCKET,DOMAIN,TYPE,PROTOCOL , socketpair +SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL , sort SUBNAME LIST +, sort BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST +, splice ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, +split /PATTERN/,EXPR,LIMIT , split /PATTERN/,EXPR, split /PATTERN/, +split, sprintf FORMAT, LIST , format parameter index, flags, +vector flag, (minimum) width, precision, or maximum width , +size, order of arguments, sqrt EXPR , sqrt, +srand EXPR , srand, stat FILEHANDLE + , stat EXPR, stat DIRHANDLE, stat, state VARLIST +, state TYPE VARLIST, state VARLIST : ATTRS, state TYPE VARLIST : +ATTRS, study SCALAR , study, sub NAME BLOCK , sub NAME +(PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, +_\|_SUB_\|_ , substr EXPR,OFFSET,LENGTH,REPLACEMENT + , substr EXPR,OFFSET,LENGTH, substr +EXPR,OFFSET, symlink OLDFILE,NEWFILE +, syscall NUMBER, LIST , sysopen +FILEHANDLE,FILENAME,MODE , sysopen +FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET +, sysread FILEHANDLE,SCALAR,LENGTH, sysseek +FILEHANDLE,POSITION,WHENCE , system LIST +, system PROGRAM LIST, syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET +, syswrite FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, +tell FILEHANDLE , tell, telldir DIRHANDLE , tie +VARIABLE,CLASSNAME,LIST , tied VARIABLE , time +, times , tr///, truncate FILEHANDLE,LENGTH , +truncate EXPR,LENGTH, uc EXPR , uc, ucfirst +EXPR , ucfirst, umask EXPR , umask, undef +EXPR , undef, unlink LIST + , unlink, unpack TEMPLATE,EXPR , unpack TEMPLATE, +unshift ARRAY,LIST , untie VARIABLE , use Module VERSION +LIST , use Module VERSION, use Module LIST, use +Module, use VERSION, utime LIST , values HASH , values +ARRAY, vec EXPR,OFFSET,BITS , wait , +waitpid PID,FLAGS , wantarray , warn LIST + , write FILEHANDLE , write EXPR, write, +y/// +.IX Xref "-r -w -x -o -R -W -X -O -e -z -s -f -d -l -p -S -b -c -t -u -g -k -T -B -M -A -C abs absolute accept alarm SIGALRM timer atan2 arctangent tan tangent bind binmode binary text DOS Windows bless caller call stack stack stack trace chdir cd directory, change chmod permission mode chomp INPUT_RECORD_SEPARATOR $ newline eol chop chown owner user group chr character ASCII Unicode chroot root close closedir connect continue cos cosine acos arccosine crypt digest hash salt plaintext password decrypt cryptography passwd encrypt dbmclose dbmopen dbm ndbm sdbm gdbm defined undef undefined delete die throw exception raise $@ abort do block do dump core undump each hash, iterator array, iterator eof end of file end-of-file eval try catch evaluate parse execute error, handling exception, handling evalbytes exec execute exists autovivification exit terminate abort exp exponential antilog antilogarithm e fc foldcase casefold fold-case case-fold fcntl __FILE__ field fileno flock lock locking fork child parent format formline getc getchar character file, read getlogin login getpeername peer getpgrp group getppid parent pid getpriority priority nice getpwnam getgrnam gethostbyname getnetbyname getprotobyname getpwuid getgrgid getservbyname gethostbyaddr getnetbyaddr getprotobynumber getservbyport getpwent getgrent gethostent getnetent getprotoent getservent setpwent setgrent sethostent setnetent setprotoent setservent endpwent endgrent endhostent endnetent endprotoent endservent getsockname getsockopt glob wildcard filename, expansion expand gmtime UTC Greenwich goto jump jmp grep hex hexadecimal import index indexOf InStr int integer truncate trunc floor ioctl join keys key kill signal last break lc lowercase lcfirst lowercase length size __LINE__ link listen local localtime ctime lock log logarithm e ln base lstat map method mkdir md directory, create msgctl msgget msgrcv msgsnd my next continue no declarations unimporting oct octal hex hexadecimal binary bin open pipe file, open fopen opendir ord encoding our global pack package module namespace version package module namespace version __PACKAGE__ pipe pop stack pos match, position print printf prototype push stack quotemeta metacharacter rand random read file, read readdir readline gets fgets readlink readpipe recv redo ref reference rename move mv ren require reset return reverse rev invert rewinddir rindex rmdir rd directory, remove say scalar context seek fseek filehandle, position seekdir select filehandle, default select semctl semget semop send setpgrp group setpriority priority nice renice setsockopt shift shmctl shmget shmread shmwrite shutdown sin sine asin arcsine sleep pause socket socketpair sort splice split sprintf precision sqrt root square root srand seed randseed stat file, status ctime state study sub __SUB__ substr substring mid left right symlink link symbolic link link, symbolic syscall system call sysopen sysread sysseek lseek system shell syswrite tell telldir tie tied time epoch times truncate uc uppercase toupper ucfirst uppercase umask undef undefine unlink delete remove rm del unpack unshift untie use module import utime values vec bit bit vector wait waitpid wantarray context warn warning STDERR write" +.IP "Non-function Keywords by Cross-reference" 4 +.IX Item "Non-function Keywords by Cross-reference" +_\|_DATA_\|_, _\|_END_\|_, BEGIN, CHECK, END, INIT, UNITCHECK, DESTROY, and, cmp, +eq, ge, gt, isa, le, lt, ne, not, or, x, xor, AUTOLOAD, else, elsif, for, +foreach, if, unless, until, while, elseif, default, given, when, try, +catch, finally, defer, ADJUST +.RE +.RS 4 +.RE +.SS "perlopentut \- simple recipes for opening files and pipes in Perl" +.IX Subsection "perlopentut - simple recipes for opening files and pipes in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +\&\fIOK\fR, \fIHANDLE\fR, \fIMODE\fR, \fIPATHNAME\fR +.IP "Opening Text Files" 4 +.IX Item "Opening Text Files" +.RS 4 +.PD 0 +.IP "Opening Text Files for Reading" 4 +.IX Item "Opening Text Files for Reading" +.IP "Opening Text Files for Writing" 4 +.IX Item "Opening Text Files for Writing" +.RE +.RS 4 +.RE +.IP "Opening Binary Files" 4 +.IX Item "Opening Binary Files" +.IP "Opening Pipes" 4 +.IX Item "Opening Pipes" +.RS 4 +.IP "Opening a pipe for reading" 4 +.IX Item "Opening a pipe for reading" +.IP "Opening a pipe for writing" 4 +.IX Item "Opening a pipe for writing" +.IP "Expressing the command as a list" 4 +.IX Item "Expressing the command as a list" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "AUTHOR and COPYRIGHT" 4 +.IX Item "AUTHOR and COPYRIGHT" +.PD +.ie n .SS "perlpacktut \- tutorial on ""pack"" and ""unpack""" +.el .SS "perlpacktut \- tutorial on \f(CWpack\fP and \f(CWunpack\fP" +.IX Subsection "perlpacktut - tutorial on pack and unpack" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "The Basic Principle" 4 +.IX Item "The Basic Principle" +.IP "Packing Text" 4 +.IX Item "Packing Text" +.IP "Packing Numbers" 4 +.IX Item "Packing Numbers" +.RS 4 +.IP Integers 4 +.IX Item "Integers" +.IP "Unpacking a Stack Frame" 4 +.IX Item "Unpacking a Stack Frame" +.IP "How to Eat an Egg on a Net" 4 +.IX Item "How to Eat an Egg on a Net" +.IP "Byte-order modifiers" 4 +.IX Item "Byte-order modifiers" +.IP "Floating point Numbers" 4 +.IX Item "Floating point Numbers" +.RE +.RS 4 +.RE +.IP "Exotic Templates" 4 +.IX Item "Exotic Templates" +.RS 4 +.IP "Bit Strings" 4 +.IX Item "Bit Strings" +.IP Uuencoding 4 +.IX Item "Uuencoding" +.IP "Doing Sums" 4 +.IX Item "Doing Sums" +.IP Unicode 4 +.IX Item "Unicode" +.IP "Another Portable Binary Encoding" 4 +.IX Item "Another Portable Binary Encoding" +.RE +.RS 4 +.RE +.IP "Template Grouping" 4 +.IX Item "Template Grouping" +.IP "Lengths and Widths" 4 +.IX Item "Lengths and Widths" +.RS 4 +.IP "String Lengths" 4 +.IX Item "String Lengths" +.IP "Dynamic Templates" 4 +.IX Item "Dynamic Templates" +.IP "Counting Repetitions" 4 +.IX Item "Counting Repetitions" +.IP "Intel HEX" 4 +.IX Item "Intel HEX" +.RE +.RS 4 +.RE +.IP "Packing and Unpacking C Structures" 4 +.IX Item "Packing and Unpacking C Structures" +.RS 4 +.IP "The Alignment Pit" 4 +.IX Item "The Alignment Pit" +.IP "Dealing with Endian-ness" 4 +.IX Item "Dealing with Endian-ness" +.IP "Alignment, Take 2" 4 +.IX Item "Alignment, Take 2" +.IP "Alignment, Take 3" 4 +.IX Item "Alignment, Take 3" +.IP "Pointers for How to Use Them" 4 +.IX Item "Pointers for How to Use Them" +.RE +.RS 4 +.RE +.IP "Pack Recipes" 4 +.IX Item "Pack Recipes" +.IP "Funnies Section" 4 +.IX Item "Funnies Section" +.IP Authors 4 +.IX Item "Authors" +.PD +.SS "perlpod \- the Plain Old Documentation format" +.IX Subsection "perlpod - the Plain Old Documentation format" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Ordinary Paragraph" 4 +.IX Xref "POD, ordinary paragraph" +.IX Item "Ordinary Paragraph" +.IP "Verbatim Paragraph" 4 +.IX Xref "POD, verbatim paragraph verbatim" +.IX Item "Verbatim Paragraph" +.IP "Command Paragraph" 4 +.IX Xref "POD, command" +.IX Item "Command Paragraph" +.PD +\&\f(CW\*(C`=head1 \fR\f(CIHeading Text\fR\f(CW\*(C'\fR + , \f(CW\*(C`=head2 +\&\fR\f(CIHeading Text\fR\f(CW\*(C'\fR, \f(CW\*(C`=head3 \fR\f(CIHeading Text\fR\f(CW\*(C'\fR, \f(CW\*(C`=head4 \fR\f(CIHeading Text\fR\f(CW\*(C'\fR, +\&\f(CW\*(C`=head5 \fR\f(CIHeading Text\fR\f(CW\*(C'\fR, \f(CW\*(C`=head6 \fR\f(CIHeading Text\fR\f(CW\*(C'\fR, \f(CW\*(C`=over +\&\fR\f(CIindentlevel\fR\f(CW\*(C'\fR , \f(CW\*(C`=item +\&\fR\f(CIstuff...\fR\f(CW\*(C'\fR, \f(CW\*(C`=back\*(C'\fR, \f(CW\*(C`=cut\*(C'\fR , \f(CW\*(C`=pod\*(C'\fR , +\&\f(CW\*(C`=begin \fR\f(CIformatname\fR\f(CW\*(C'\fR , +\&\f(CW\*(C`=end \fR\f(CIformatname\fR\f(CW\*(C'\fR, \f(CW\*(C`=for \fR\f(CIformatname\fR\f(CW \fR\f(CItext...\fR\f(CW\*(C'\fR, \f(CW\*(C`=encoding +\&\fR\f(CIencodingname\fR\f(CW\*(C'\fR +.IX Xref "=head1 =head2 =head3 =head4 =head5 =head6 head1 head2 head3 head4 head5 head6 =over =item =back over item back =cut cut =pod pod =begin =end =for begin end for =encoding encoding" +.IP "Formatting Codes" 4 +.IX Xref "POD, formatting code formatting code POD, interior sequence interior sequence" +.IX Item "Formatting Codes" +\&\f(CW\*(C`I<text>\*(C'\fR \-\- italic text , \f(CW\*(C`B<text>\*(C'\fR \-\- bold text + , \f(CW\*(C`C<code>\*(C'\fR \-\- code text + , \f(CW\*(C`L<name>\*(C'\fR \-\- +a hyperlink +, \f(CW\*(C`E<escape>\*(C'\fR \-\- a character escape + , \f(CW\*(C`F<filename>\*(C'\fR \-\- used +for filenames +, \f(CW\*(C`S<text>\*(C'\fR \-\- text contains non-breaking spaces + , \f(CW\*(C`X<topic name>\*(C'\fR \-\- an index entry + , \f(CW\*(C`Z<>\*(C'\fR \-\- a +null (zero-effect) formatting code +.IX Xref "I I<> POD, formatting code, italic italic B B<> POD, formatting code, bold bold C C<> POD, formatting code, code code L L<> POD, formatting code, hyperlink hyperlink E E<> POD, formatting code, escape escape F F<> POD, formatting code, filename filename S S<> POD, formatting code, non-breaking space non-breaking space X X<> POD, formatting code, index entry index entry Z Z<> POD, formatting code, null null" +.IP "The Intent" 4 +.IX Xref "POD, intent of" +.IX Item "The Intent" +.PD 0 +.IP "Embedding Pods in Perl Modules" 4 +.IX Xref "POD, embedding" +.IX Item "Embedding Pods in Perl Modules" +.IP "Hints for Writing Pod" 4 +.IX Item "Hints for Writing Pod" +.PD + +.IX Xref "podchecker POD, validating" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlpodspec \- Plain Old Documentation: format specification and notes" +.IX Subsection "perlpodspec - Plain Old Documentation: format specification and notes" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Pod Definitions" 4 +.IX Item "Pod Definitions" +.IP "Pod Commands" 4 +.IX Item "Pod Commands" +.PD +"=head1", "=head2", "=head3", "=head4", "=head5", "=head6", "=pod", "=cut", +"=over", "=item", "=back", "=begin formatname", "=begin formatname +parameter", "=end formatname", "=for formatname text...", "=encoding +encodingname" +.IP "Pod Formatting Codes" 4 +.IX Item "Pod Formatting Codes" +\&\f(CW\*(C`I<text>\*(C'\fR \-\- italic text, \f(CW\*(C`B<text>\*(C'\fR \-\- bold text, +\&\f(CW\*(C`C<code>\*(C'\fR \-\- code text, \f(CW\*(C`F<filename>\*(C'\fR \-\- style for +filenames, \f(CW\*(C`X<topic name>\*(C'\fR \-\- an index entry, \f(CW\*(C`Z<>\*(C'\fR \-\- a +null (zero-effect) formatting code, \f(CW\*(C`L<name>\*(C'\fR \-\- a hyperlink, +\&\f(CW\*(C`E<escape>\*(C'\fR \-\- a character escape, \f(CW\*(C`S<text>\*(C'\fR \-\- text +contains non-breaking spaces +.IP "Notes on Implementing Pod Processors" 4 +.IX Item "Notes on Implementing Pod Processors" +.PD 0 +.IP "About L<...> Codes" 4 +.IX Item "About L<...> Codes" +.PD +First:, Second:, Third:, Fourth:, Fifth:, Sixth: +.IP "About =over...=back Regions" 4 +.IX Item "About =over...=back Regions" +.PD 0 +.IP "About Data Paragraphs and ""=begin/=end"" Regions" 4 +.IX Item "About Data Paragraphs and ""=begin/=end"" Regions" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perldocstyle \- A style guide for writing Perl's documentation" +.IX Subsection "perldocstyle - A style guide for writing Perl's documentation" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Purpose of this guide" 4 +.IX Item "Purpose of this guide" +.IP "Intended audience" 4 +.IX Item "Intended audience" +.IP "Status of this document" 4 +.IX Item "Status of this document" +.RE +.RS 4 +.RE +.IP FUNDAMENTALS 4 +.IX Item "FUNDAMENTALS" +.RS 4 +.IP "Choice of markup: Pod" 4 +.IX Item "Choice of markup: Pod" +.IP "Choice of language: American English" 4 +.IX Item "Choice of language: American English" +.IP "Choice of encoding: UTF\-8" 4 +.IX Item "Choice of encoding: UTF-8" +.IP "Choice of underlying style guide: CMOS" 4 +.IX Item "Choice of underlying style guide: CMOS" +.IP "Contributing to Perl's documentation" 4 +.IX Item "Contributing to Perl's documentation" +.RE +.RS 4 +.RE +.IP "FORMATTING AND STRUCTURE" 4 +.IX Item "FORMATTING AND STRUCTURE" +.RS 4 +.IP "Document structure" 4 +.IX Item "Document structure" +.IP "Formatting rules" 4 +.IX Item "Formatting rules" +.IP "Adding comments" 4 +.IX Item "Adding comments" +.IP "Perlfunc has special rules" 4 +.IX Item "Perlfunc has special rules" +.RE +.RS 4 +.RE +.IP "TONE AND STYLE" 4 +.IX Item "TONE AND STYLE" +.RS 4 +.IP "Apply one of the four documentation modes" 4 +.IX Item "Apply one of the four documentation modes" +.IP "Assume readers' intelligence, but not their knowledge" 4 +.IX Item "Assume readers' intelligence, but not their knowledge" +.IP "Use meaningful variable and symbol names in examples" 4 +.IX Item "Use meaningful variable and symbol names in examples" +.IP "Write in English, but not just for English-speakers" 4 +.IX Item "Write in English, but not just for English-speakers" +.IP "Omit placeholder text or commentary" 4 +.IX Item "Omit placeholder text or commentary" +.IP "Apply section-breaks and examples generously" 4 +.IX Item "Apply section-breaks and examples generously" +.IP "Lead with common cases and best practices" 4 +.IX Item "Lead with common cases and best practices" +.IP "Document Perl's present" 4 +.IX Item "Document Perl's present" +.IP "The documentation speaks with one voice" 4 +.IX Item "The documentation speaks with one voice" +.RE +.RS 4 +.RE +.IP "INDEX OF PREFERRED TERMS" 4 +.IX Item "INDEX OF PREFERRED TERMS" +.PD +built-in function, Darwin, macOS, man page, Perl; perl, Perl 5, Perl 6, +Perl 5 Porters, the; porters, the; p5p, program, Raku, script, semicolon, +Unix +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlpodstyle \- Perl POD style guide" +.IX Subsection "perlpodstyle - Perl POD style guide" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +NAME, SYNOPSIS, DESCRIPTION, OPTIONS, RETURN VALUE, ERRORS, DIAGNOSTICS, +EXAMPLES, ENVIRONMENT, FILES, CAVEATS, BUGS, RESTRICTIONS, NOTES, AUTHOR, +HISTORY, COPYRIGHT AND LICENSE, SEE ALSO +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perldiag \- various Perl diagnostics" +.IX Subsection "perldiag - various Perl diagnostics" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perldeprecation \- list Perl deprecations" +.IX Subsection "perldeprecation - list Perl deprecations" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Unscheduled Deprecations" 4 +.IX Item "Unscheduled Deprecations" +.IP "Perl 5.42" 4 +.IX Item "Perl 5.42" +.IP "Perl 5.40" 4 +.IX Item "Perl 5.40" +.IP "Perl 5.38" 4 +.IX Item "Perl 5.38" +.IP "Perl 5.34" 4 +.IX Item "Perl 5.34" +.IP "Perl 5.32" 4 +.IX Item "Perl 5.32" +.IP "Perl 5.30" 4 +.IX Item "Perl 5.30" +.IP "Perl 5.28" 4 +.IX Item "Perl 5.28" +.IP "Perl 5.26" 4 +.IX Item "Perl 5.26" +.IP "Perl 5.24" 4 +.IX Item "Perl 5.24" +.IP "Perl 5.16" 4 +.IX Item "Perl 5.16" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perllexwarn \- Perl Lexical Warnings" +.IX Subsection "perllexwarn - Perl Lexical Warnings" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "perldebug \- Perl debugging" +.IX Subsection "perldebug - Perl debugging" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "The Perl Debugger" 4 +.IX Item "The Perl Debugger" +.RS 4 +.IP "Calling the Debugger" 4 +.IX Item "Calling the Debugger" +.PD +perl \-d program_name, perl \-d \-e 0, perl \-d:ptkdb program_name, perl \-dt +threaded_program_name +.IP "Debugger Commands" 4 +.IX Item "Debugger Commands" +h , h [command], h h, p expr , +x [maxdepth] expr , V [pkg [vars]] , X [vars] , y [level [vars]] , T , s +[expr] , n [expr] , r +, <CR>, 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 [n] +, t [n] expr , b +, b [line] [condition] , b [file]:[line] [condition] , b subname [condition] , b postpone +subname [condition] , b load filename + , b compile subname +, B line , B * + , disable [file]:[line] + , disable [line] + , enable [file]:[line] + , enable [line] + , 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] +.IX Xref "debugger command, h debugger command, p debugger command, x debugger command, V debugger command, X debugger command, y debugger command, T backtrace stack, backtrace debugger command, s step debugger command, n debugger command, r debugger command, c debugger command, l debugger command, - debugger command, v debugger command, . debugger command, f debugger command, L debugger command, S debugger command, t debugger command, t breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, b breakpoint debugger command, B breakpoint debugger command, B breakpoint debugger command, disable disable breakpoint debugger command, disable disable breakpoint debugger command, disable disable breakpoint debugger command, disable disable debugger command, a debugger command, A debugger command, A debugger command, w debugger command, W debugger command, W debugger command, o debugger command, o debugger command, o debugger command, o debugger command, < debugger command, < debugger command, < debugger command, << debugger command, > debugger command, > debugger command, > debugger command, >> debugger command, { debugger command, { debugger command, {{ debugger command, ! debugger command, ! debugger command, ! debugger command, !! debugger command, source debugger command, H debugger command, q debugger command, ^D debugger command, R debugger command, | debugger command, || debugger command, m debugger command, M debugger command, man" +.IP "Configurable Options" 4 +.IX Item "Configurable Options" +\&\f(CW\*(C`recallCommand\*(C'\fR, \f(CW\*(C`ShellBang\*(C'\fR , \f(CW\*(C`pager\*(C'\fR , \f(CW\*(C`tkRunning\*(C'\fR +, \f(CW\*(C`signalLevel\*(C'\fR, \f(CW\*(C`warnLevel\*(C'\fR, \f(CW\*(C`dieLevel\*(C'\fR + , \f(CW\*(C`AutoTrace\*(C'\fR , \f(CW\*(C`LineInfo\*(C'\fR +, \f(CW\*(C`inhibit_exit\*(C'\fR , \f(CW\*(C`PrintRet\*(C'\fR , \f(CW\*(C`ornaments\*(C'\fR +, \f(CW\*(C`frame\*(C'\fR , +\&\f(CW\*(C`maxTraceLen\*(C'\fR , \f(CW\*(C`windowSize\*(C'\fR , \f(CW\*(C`arrayDepth\*(C'\fR, \f(CW\*(C`hashDepth\*(C'\fR , \f(CW\*(C`dumpDepth\*(C'\fR , \f(CW\*(C`compactDump\*(C'\fR, \f(CW\*(C`veryCompact\*(C'\fR +, \f(CW\*(C`globPrint\*(C'\fR , \f(CW\*(C`DumpDBFiles\*(C'\fR , \f(CW\*(C`DumpPackages\*(C'\fR +, \f(CW\*(C`DumpReused\*(C'\fR , \f(CW\*(C`quote\*(C'\fR, \f(CW\*(C`HighBit\*(C'\fR, \f(CW\*(C`undefPrint\*(C'\fR + , \f(CW\*(C`UsageOnly\*(C'\fR +, \f(CW\*(C`HistFile\*(C'\fR , \f(CW\*(C`HistSize\*(C'\fR , \f(CW\*(C`TTY\*(C'\fR +, \f(CW\*(C`noTTY\*(C'\fR , \f(CW\*(C`ReadLine\*(C'\fR +, \f(CW\*(C`NonStop\*(C'\fR +.IX Xref "debugger option, recallCommand debugger option, ShellBang debugger option, pager debugger option, tkRunning debugger option, signalLevel debugger option, warnLevel debugger option, dieLevel debugger option, AutoTrace debugger option, LineInfo debugger option, inhibit_exit debugger option, PrintRet debugger option, ornaments debugger option, frame debugger option, maxTraceLen debugger option, windowSize debugger option, arrayDepth debugger option, hashDepth debugger option, dumpDepth debugger option, compactDump debugger option, veryCompact debugger option, globPrint debugger option, DumpDBFiles debugger option, DumpPackages debugger option, DumpReused debugger option, quote debugger option, HighBit debugger option, undefPrint debugger option, UsageOnly debugger option, history, HistFile debugger option, history, HistSize debugger option, TTY debugger option, noTTY debugger option, ReadLine debugger option, NonStop" +.IP "Debugger Input/Output" 4 +.IX Item "Debugger Input/Output" +Prompt, Multiline commands, Stack backtrace , Line Listing Format, Frame listing +.IX Xref "backtrace stack, backtrace" +.IP "Debugging Compile-Time Statements" 4 +.IX Item "Debugging Compile-Time Statements" +.PD 0 +.IP "Debugger Customization" 4 +.IX Item "Debugger Customization" +.IP "Readline Support / History in the Debugger" 4 +.IX Item "Readline Support / History in the Debugger" +.IP "Editor Support for Debugging" 4 +.IX Item "Editor Support for Debugging" +.IP "The Perl Profiler" 4 +.IX Xref "profile profiling profiler" +.IX Item "The Perl Profiler" +.RE +.RS 4 +.RE +.IP "Debugging Regular Expressions" 4 +.IX Xref "regular expression, debugging regex, debugging regexp, debugging" +.IX Item "Debugging Regular Expressions" +.IP "Debugging Memory Usage" 4 +.IX Xref "memory usage" +.IX Item "Debugging Memory Usage" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.PD +.SS "perlvar \- Perl predefined variables" +.IX Subsection "perlvar - Perl predefined variables" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The Syntax of Variable Names" 4 +.IX Item "The Syntax of Variable Names" +.RE +.RS 4 +.RE +.IP "SPECIAL VARIABLES" 4 +.IX Item "SPECIAL VARIABLES" +.RS 4 +.IP "General Variables" 4 +.IX Item "General Variables" +.PD +\&\f(CW$ARG\fR, \f(CW$_\fR , \f(CW@ARG\fR, \f(CW@_\fR , \f(CW$LIST_SEPARATOR\fR, $" +, \f(CW$PROCESS_ID\fR, \f(CW$PID\fR, $$ , +\&\f(CW$PROGRAM_NAME\fR, \f(CW$0\fR , \f(CW$REAL_GROUP_ID\fR, \f(CW$GID\fR, $( + , \f(CW$EFFECTIVE_GROUP_ID\fR, \f(CW$EGID\fR, $) +, \f(CW$REAL_USER_ID\fR, \f(CW$UID\fR, $< +, \f(CW$EFFECTIVE_USER_ID\fR, \f(CW$EUID\fR, $> +, \f(CW$SUBSCRIPT_SEPARATOR\fR, \f(CW$SUBSEP\fR, $; +, \f(CW$a\fR, \f(CW$b\fR , \f(CW%ENV\fR , +\&\f(CW$OLD_PERL_VERSION\fR, $] , \f(CW$SYSTEM_FD_MAX\fR, $^F + , \f(CW@F\fR , \f(CW@INC\fR , \f(CW%INC\fR , \f(CW$INC\fR +, \f(CW$INPLACE_EDIT\fR, $^I , \f(CW@ISA\fR , $^M +, ${^MAX_NESTED_EVAL_BEGIN_BLOCKS}, \f(CW$OSNAME\fR, $^O , +\&\f(CW%SIG\fR , %{^HOOK} , require_\|_before, require_\|_after, +\&\f(CW$BASETIME\fR, $^T , \f(CW$PERL_VERSION\fR, $^V +, \f(CW$EXECUTABLE_NAME\fR, $^X +.IX Xref "$_ $ARG @_ @ARG $"" $LIST_SEPARATOR $$ $PID $PROCESS_ID $0 $PROGRAM_NAME $( $GID $REAL_GROUP_ID $) $EGID $EFFECTIVE_GROUP_ID $< $UID $REAL_USER_ID $> $EUID $EFFECTIVE_USER_ID $; $SUBSEP SUBSCRIPT_SEPARATOR $a $b %ENV $] $OLD_PERL_VERSION $^F $SYSTEM_FD_MAX @F @INC %INC $INC $^I $INPLACE_EDIT @ISA $^M $^O $OSNAME %SIG %{^HOOK} $^T $BASETIME $^V $PERL_VERSION $^X $EXECUTABLE_NAME" +.IP "Variables related to regular expressions" 4 +.IX Item "Variables related to regular expressions" +$<\fIdigits\fR> ($1, \f(CW$2\fR, ...) , @{^CAPTURE} + , \f(CW$MATCH\fR, $& , ${^MATCH} +, \f(CW$PREMATCH\fR, $` , ${^PREMATCH} +, \f(CW$POSTMATCH\fR, $' , ${^POSTMATCH} +, \f(CW$LAST_PAREN_MATCH\fR, $+ , +\&\f(CW$LAST_SUBMATCH_RESULT\fR, $^N , +\&\f(CW@LAST_MATCH_END\fR, @+ , %{^CAPTURE}, +\&\f(CW%LAST_PAREN_MATCH\fR, %+ , +\&\f(CW@LAST_MATCH_START\fR, @\- , \f(CW\*(C`$\`\*(C'\fR is the same as +\&\f(CW\*(C`substr($var, 0, $\-[0])\*(C'\fR, \f(CW$&\fR is the same as \f(CW\*(C`substr($var, $\-[0], $+[0] +\&\- $\-[0])\*(C'\fR, \f(CW\*(C`$\*(Aq\*(C'\fR is the same as \f(CW\*(C`substr($var, $+[0])\*(C'\fR, \f(CW$1\fR is the same +as \f(CW\*(C`substr($var, $\-[1], $+[1] \- $\-[1])\*(C'\fR, \f(CW$2\fR is the same as +\&\f(CW\*(C`substr($var, $\-[2], $+[2] \- $\-[2])\*(C'\fR, \f(CW$3\fR is the same as \f(CW\*(C`substr($var, +$\-[3], $+[3] \- $\-[3])\*(C'\fR, %{^CAPTURE_ALL} , %\- , +${^LAST_SUCCESSFUL_PATTERN}, \f(CW$LAST_REGEXP_CODE_RESULT\fR, $^R +, ${^RE_COMPILE_RECURSION_LIMIT} +, ${^RE_DEBUG_FLAGS} +, ${^RE_TRIE_MAXBUF} +.IX Xref "$1 $2 $3 $\\f(ISdigits\\f(IE @{^CAPTURE} @^CAPTURE $& $MATCH ${^MATCH} $` $PREMATCH ${^PREMATCH} $' $POSTMATCH @- ${^POSTMATCH} $+ $LAST_PAREN_MATCH $^N $LAST_SUBMATCH_RESULT @+ @LAST_MATCH_END %+ %LAST_PAREN_MATCH %{^CAPTURE} @- @LAST_MATCH_START %{^CAPTURE_ALL} %- $^R $LAST_REGEXP_CODE_RESULT ${^RE_COMPILE_RECURSION_LIMIT} ${^RE_DEBUG_FLAGS} ${^RE_TRIE_MAXBUF}" +.IP "Variables related to filehandles" 4 +.IX Item "Variables related to filehandles" +\&\f(CW$ARGV\fR , \f(CW@ARGV\fR , ARGV , ARGVOUT , +IO::Handle\->output_field_separator( EXPR ), \f(CW$OUTPUT_FIELD_SEPARATOR\fR, \f(CW$OFS\fR, +$, , HANDLE\->input_line_number( +EXPR ), \f(CW$INPUT_LINE_NUMBER\fR, \f(CW$NR\fR, $. +, IO::Handle\->input_record_separator( EXPR ), +\&\f(CW$INPUT_RECORD_SEPARATOR\fR, \f(CW$RS\fR, $/ , +IO::Handle\->output_record_separator( EXPR ), \f(CW$OUTPUT_RECORD_SEPARATOR\fR, +\&\f(CW$ORS\fR, $\e , HANDLE\->autoflush( EXPR +), \f(CW$OUTPUT_AUTOFLUSH\fR, $| , +${^LAST_FH} , \f(CW$ACCUMULATOR\fR, $^A , +IO::Handle\->format_formfeed(EXPR), \f(CW$FORMAT_FORMFEED\fR, $^L +, HANDLE\->format_page_number(EXPR), \f(CW$FORMAT_PAGE_NUMBER\fR, +$% , HANDLE\->format_lines_left(EXPR), +\&\f(CW$FORMAT_LINES_LEFT\fR, $\- , +IO::Handle\->format_line_break_characters EXPR, +\&\f(CW$FORMAT_LINE_BREAK_CHARACTERS\fR, \f(CW$:\fR , +HANDLE\->format_lines_per_page(EXPR), \f(CW$FORMAT_LINES_PER_PAGE\fR, $= +, HANDLE\->format_top_name(EXPR), \f(CW$FORMAT_TOP_NAME\fR, +$^ , HANDLE\->format_name(EXPR), \f(CW$FORMAT_NAME\fR, $~ +.IX Xref "$ARGV @ARGV ARGV ARGVOUT $, $OFS $OUTPUT_FIELD_SEPARATOR $. $NR $INPUT_LINE_NUMBER line number $ $RS $INPUT_RECORD_SEPARATOR $\\ $ORS $OUTPUT_RECORD_SEPARATOR $| autoflush flush $OUTPUT_AUTOFLUSH ${^LAST_FH} $^A $ACCUMULATOR $^L $FORMAT_FORMFEED $% $FORMAT_PAGE_NUMBER $- $FORMAT_LINES_LEFT $: FORMAT_LINE_BREAK_CHARACTERS $= $FORMAT_LINES_PER_PAGE $^ $FORMAT_TOP_NAME $~ $FORMAT_NAME" +.IP "Error Variables" 4 +.IX Xref "error exception" +.IX Item "Error Variables" +${^CHILD_ERROR_NATIVE} , \f(CW$EXTENDED_OS_ERROR\fR, $^E + , \f(CW$EXCEPTIONS_BEING_CAUGHT\fR, $^S +, \f(CW$WARNING\fR, $^W , +${^WARNING_BITS} , \f(CW$OS_ERROR\fR, \f(CW$ERRNO\fR, $! +, \f(CW%OS_ERROR\fR, \f(CW%ERRNO\fR, %! , +\&\f(CW$CHILD_ERROR\fR, $? , \f(CW$EVAL_ERROR\fR, $@ +.IX Xref "$^CHILD_ERROR_NATIVE $^E $EXTENDED_OS_ERROR $^S $EXCEPTIONS_BEING_CAUGHT $^W $WARNING ${^WARNING_BITS} $! $ERRNO $OS_ERROR %! %OS_ERROR %ERRNO $? $CHILD_ERROR $@ $EVAL_ERROR" +.IP "Variables related to the interpreter state" 4 +.IX Item "Variables related to the interpreter state" +\&\f(CW$COMPILING\fR, $^C , \f(CW$DEBUGGING\fR, $^D , +${^GLOBAL_PHASE} , CONSTRUCT, START, CHECK, INIT, RUN, +END, DESTRUCT, $^H , %^H , ${^OPEN} , \f(CW$PERLDB\fR, $^P + , 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, +0x200, 0x400, 0x800, 0x1000, ${^TAINT} , ${^SAFE_LOCALES} +, ${^UNICODE} , ${^UTF8CACHE} +, ${^UTF8LOCALE} +.IX Xref "$^C $COMPILING $^D $DEBUGGING ${^GLOBAL_PHASE} $^H %^H ${^OPEN} $^P $PERLDB ${^TAINT} ${^SAFE_LOCALES} ${^UNICODE} ${^UTF8CACHE} ${^UTF8LOCALE}" +.IP "Deprecated and removed variables" 4 +.IX Item "Deprecated and removed variables" +$# , $* , $[ , ${^ENCODING} , +${^WIN32_SLOPPY_STAT} +.IX Xref "$# $* $[ ${^ENCODING} ${^WIN32_SLOPPY_STAT} sitecustomize sitecustomize.pl" +.RE +.RS 4 +.RE +.SS "perlre \- Perl regular expressions" +.IX Subsection "perlre - Perl regular expressions" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The Basics" 4 +.IX Xref "regular expression, version 8 regex, version 8 regexp, version 8" +.IX Item "The Basics" +.IP Modifiers 4 +.IX Item "Modifiers" +.PD +\&\fR\f(CB\*(C`m\*(C'\fR\fB\fR , \fB\fR\f(CB\*(C`s\*(C'\fR\fB\fR , \fB\fR\f(CB\*(C`i\*(C'\fR\fB\fR , \fB\fR\f(CB\*(C`x\*(C'\fR\fB\fR and \fB\fR\f(CB\*(C`xx\*(C'\fR\fB\fR , \fB\fR\f(CB\*(C`p\*(C'\fR\fB\fR , \fB\fR\f(CB\*(C`a\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`d\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`l\*(C'\fR\fB\fR, and \fB\fR\f(CB\*(C`u\*(C'\fR\fB\fR + , \fB\fR\f(CB\*(C`n\*(C'\fR\fB\fR , Other Modifiers +.IX Xref " m regex, multiline regexp, multiline regular expression, multiline s regex, single-line regexp, single-line regular expression, single-line i regex, case-insensitive regexp, case-insensitive regular expression, case-insensitive x p regex, preserve regexp, preserve a d l u n regex, non-capture regexp, non-capture regular expression, non-capture" +.IP "Regular Expressions" 4 +.IX Item "Regular Expressions" +[1], [2], [3], [4], [5], [6], [7], [8] +.IP "Quoting metacharacters" 4 +.IX Item "Quoting metacharacters" +.PD 0 +.IP "Extended Patterns" 4 +.IX Item "Extended Patterns" +.PD +\&\f(CW\*(C`(?#\fR\f(CItext\fR\f(CW)\*(C'\fR , \f(CW\*(C`(?adlupimnsx\-imnsx)\*(C'\fR, \f(CW\*(C`(?^alupimnsx)\*(C'\fR +, \f(CW\*(C`(?:\fR\f(CIpattern\fR\f(CW)\*(C'\fR , \f(CW\*(C`(?adluimnsx\-imnsx:\fR\f(CIpattern\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(?^aluimnsx:\fR\f(CIpattern\fR\f(CW)\*(C'\fR , \f(CW\*(C`(?|\fR\f(CIpattern\fR\f(CW)\*(C'\fR , Lookaround Assertions , \f(CW\*(C`(?=\fR\f(CIpattern\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(*pla:\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(*positive_lookahead:\fR\f(CIpattern\fR\f(CW)\*(C'\fR + , +\&\f(CW\*(C`(?!\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(*nla:\fR\f(CIpattern\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(*negative_lookahead:\fR\f(CIpattern\fR\f(CW)\*(C'\fR + , +\&\f(CW\*(C`(?<=\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`\eK\*(C'\fR, \f(CW\*(C`(*plb:\fR\f(CIpattern\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(*positive_lookbehind:\fR\f(CIpattern\fR\f(CW)\*(C'\fR + +, \f(CW\*(C`(?<!\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(*nlb:\fR\f(CIpattern\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(*negative_lookbehind:\fR\f(CIpattern\fR\f(CW)\*(C'\fR + , +\&\f(CW\*(C`(?<\fR\f(CINAME\fR\f(CW>\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(?\*(Aq\fR\f(CINAME\fR\f(CW\*(Aq\fR\f(CIpattern\fR\f(CW)\*(C'\fR + , \f(CW\*(C`\ek<\fR\f(CINAME\fR\f(CW>\*(C'\fR, \f(CW\*(C`\ek\*(Aq\fR\f(CINAME\fR\f(CW\*(Aq\*(C'\fR, \f(CW\*(C`\ek{\fR\f(CINAME\fR\f(CW}\*(C'\fR, \f(CW\*(C`(?{ \fR\f(CIcode\fR\f(CW })\*(C'\fR , \f(CW\*(C`(*{ \fR\f(CIcode\fR\f(CW +})\*(C'\fR , \f(CW\*(C`(??{ \fR\f(CIcode\fR\f(CW })\*(C'\fR + , +\&\f(CW\*(C`(?\fR\f(CIPARNO\fR\f(CW)\*(C'\fR \f(CW\*(C`(?\-\fR\f(CIPARNO\fR\f(CW)\*(C'\fR \f(CW\*(C`(?+\fR\f(CIPARNO\fR\f(CW)\*(C'\fR \f(CW\*(C`(?R)\*(C'\fR \f(CW\*(C`(?0)\*(C'\fR + + + , \f(CW\*(C`(?&\fR\f(CINAME\fR\f(CW)\*(C'\fR +, \f(CW\*(C`(?(\fR\f(CIcondition\fR\f(CW)\fR\f(CIyes\-pattern\fR\f(CW|\fR\f(CIno\-pattern\fR\f(CW)\*(C'\fR , +\&\f(CW\*(C`(?(\fR\f(CIcondition\fR\f(CW)\fR\f(CIyes\-pattern\fR\f(CW)\*(C'\fR, an integer in parentheses, a +lookahead/lookbehind/evaluate zero-width assertion;, a name in angle +brackets or single quotes, the special symbol \f(CW\*(C`(R)\*(C'\fR, \f(CW\*(C`(1)\*(C'\fR \f(CW\*(C`(2)\*(C'\fR .., +\&\f(CW\*(C`(<\fR\f(CINAME\fR\f(CW>)\*(C'\fR \f(CW\*(C`(\*(Aq\fR\f(CINAME\fR\f(CW\*(Aq)\*(C'\fR, \f(CW\*(C`(?=...)\*(C'\fR \f(CW\*(C`(?!...)\*(C'\fR \f(CW\*(C`(?<=...)\*(C'\fR +\&\f(CW\*(C`(?<!...)\*(C'\fR, \f(CW\*(C`(?{ \fR\f(CICODE\fR\f(CW })\*(C'\fR, \f(CW\*(C`(*{ \fR\f(CICODE\fR\f(CW })\*(C'\fR, \f(CW\*(C`(R)\*(C'\fR, \f(CW\*(C`(R1)\*(C'\fR \f(CW\*(C`(R2)\*(C'\fR +\&.., \f(CW\*(C`(R&\fR\f(CINAME\fR\f(CW)\*(C'\fR, \f(CW\*(C`(DEFINE)\*(C'\fR, \f(CW\*(C`(?>\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(*atomic:\fR\f(CIpattern\fR\f(CW)\*(C'\fR + , \f(CW\*(C`(?[ ])\*(C'\fR +.IX Xref "(?#) (?) (?^) (?:) (?^:) (?|) Branch reset look-around assertion lookaround assertion look-around lookaround (?=) (*pla (*positive_lookahead look-ahead, positive lookahead, positive (?!) (*nla (*negative_lookahead look-ahead, negative lookahead, negative (?<=) (*plb (*positive_lookbehind look-behind, positive lookbehind, positive \\K (?<!) (*nlb (*negative_lookbehind look-behind, negative lookbehind, negative (?<NAME>) (?'NAME') named capture capture (?{}) regex, code in regexp, code in regular expression, code in (*{}) regex, optimistic code (??{}) regex, postponed regexp, postponed regular expression, postponed (?PARNO) (?1) (?R) (?0) (?-1) (?+1) (?-PARNO) (?+PARNO) regex, recursive regexp, recursive regular expression, recursive regex, relative recursion GOSUB GOSTART (?&NAME) (?() (?>pattern) (*atomic backtrack backtracking atomic possessive" +.IP Backtracking 4 +.IX Xref "backtrack backtracking" +.IX Item "Backtracking" +.PD 0 +.IP "Script Runs" 4 +.IX Xref "(*script_run:...) (sr:...) (*atomic_script_run:...) (asr:...)" +.IX Item "Script Runs" +.IP "Special Backtracking Control Verbs" 4 +.IX Item "Special Backtracking Control Verbs" +.PD +Verbs, \f(CW\*(C`(*PRUNE)\*(C'\fR \f(CW\*(C`(*PRUNE:\fR\f(CINAME\fR\f(CW)\*(C'\fR , +\&\f(CW\*(C`(*SKIP)\*(C'\fR \f(CW\*(C`(*SKIP:\fR\f(CINAME\fR\f(CW)\*(C'\fR , \f(CW\*(C`(*MARK:\fR\f(CINAME\fR\f(CW)\*(C'\fR \f(CW\*(C`(*:\fR\f(CINAME\fR\f(CW)\*(C'\fR + , \f(CW\*(C`(*THEN)\*(C'\fR \f(CW\*(C`(*THEN:\fR\f(CINAME\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(*COMMIT)\*(C'\fR \f(CW\*(C`(*COMMIT:\fR\f(CIarg\fR\f(CW)\*(C'\fR , \f(CW\*(C`(*FAIL)\*(C'\fR \f(CW\*(C`(*F)\*(C'\fR +\&\f(CW\*(C`(*FAIL:\fR\f(CIarg\fR\f(CW)\*(C'\fR , \f(CW\*(C`(*ACCEPT)\*(C'\fR \f(CW\*(C`(*ACCEPT:\fR\f(CIarg\fR\f(CW)\*(C'\fR +.IX Xref "(*PRUNE) (*PRUNE:NAME) (*SKIP) (*MARK) (*MARK:NAME) (*:NAME) (*COMMIT) (*FAIL) (*F) (*ACCEPT)" +.ie n .IP "Warning on ""\e1"" Instead of $1" 4 +.el .IP "Warning on \f(CW\e1\fR Instead of \f(CW$1\fR" 4 +.IX Item "Warning on 1 Instead of $1" +.PD 0 +.IP "Repeated Patterns Matching a Zero-length Substring" 4 +.IX Item "Repeated Patterns Matching a Zero-length Substring" +.IP "Combining RE Pieces" 4 +.IX Item "Combining RE Pieces" +.PD +\&\f(CW\*(C`ST\*(C'\fR, \f(CW\*(C`S|T\*(C'\fR, \f(CW\*(C`S{REPEAT_COUNT}\*(C'\fR, \f(CW\*(C`S{min,max}\*(C'\fR, \f(CW\*(C`S{min,max}?\*(C'\fR, \f(CW\*(C`S?\*(C'\fR, +\&\f(CW\*(C`S*\*(C'\fR, \f(CW\*(C`S+\*(C'\fR, \f(CW\*(C`S??\*(C'\fR, \f(CW\*(C`S*?\*(C'\fR, \f(CW\*(C`S+?\*(C'\fR, \f(CW\*(C`(?>S)\*(C'\fR, \f(CW\*(C`(?=S)\*(C'\fR, \f(CW\*(C`(?<=S)\*(C'\fR, +\&\f(CW\*(C`(?!S)\*(C'\fR, \f(CW\*(C`(?<!S)\*(C'\fR, \f(CW\*(C`(??{ \fR\f(CIEXPR\fR\f(CW })\*(C'\fR, \f(CW\*(C`(?\fR\f(CIPARNO\fR\f(CW)\*(C'\fR, +\&\f(CW\*(C`(?(\fR\f(CIcondition\fR\f(CW)\fR\f(CIyes\-pattern\fR\f(CW|\fR\f(CIno\-pattern\fR\f(CW)\*(C'\fR +.IP "Creating Custom RE Engines" 4 +.IX Item "Creating Custom RE Engines" +.PD 0 +.IP "Embedded Code Execution Frequency" 4 +.IX Item "Embedded Code Execution Frequency" +.IP "PCRE/Python Support" 4 +.IX Item "PCRE/Python Support" +.PD +\&\f(CW\*(C`(?P<\fR\f(CINAME\fR\f(CW>\fR\f(CIpattern\fR\f(CW)\*(C'\fR, \f(CW\*(C`(?P=\fR\f(CINAME\fR\f(CW)\*(C'\fR, \f(CW\*(C`(?P>\fR\f(CINAME\fR\f(CW)\*(C'\fR +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlrebackslash \- Perl Regular Expression Backslash Sequences and Escapes" +.IX Subsection "perlrebackslash - Perl Regular Expression Backslash Sequences and Escapes" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The backslash" 4 +.IX Item "The backslash" +.PD +[1] +.IP "All the sequences and escapes" 4 +.IX Item "All the sequences and escapes" +.PD 0 +.IP "Character Escapes" 4 +.IX Item "Character Escapes" +.PD +[1], [2] +.IP Modifiers 4 +.IX Item "Modifiers" +.PD 0 +.IP "Character classes" 4 +.IX Item "Character classes" +.IP Referencing 4 +.IX Item "Referencing" +.IP Assertions 4 +.IX Item "Assertions" +.PD +\&\eA, \ez, \eZ, \eG, \eb{}, \eb, \eB{}, \eB, \f(CW\*(C`\eb{gcb}\*(C'\fR or \f(CW\*(C`\eb{g}\*(C'\fR, \f(CW\*(C`\eb{lb}\*(C'\fR, +\&\f(CW\*(C`\eb{sb}\*(C'\fR, \f(CW\*(C`\eb{wb}\*(C'\fR +.IP Misc 4 +.IX Item "Misc" +\&\eK, \eN, \eR , \eX +.IX Xref "\\R \\X" +.RE +.RS 4 +.RE +.SS "perlrecharclass \- Perl Regular Expression Character Classes" +.IX Subsection "perlrecharclass - Perl Regular Expression Character Classes" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The dot" 4 +.IX Item "The dot" +.IP "Backslash sequences" 4 +.IX Xref "\\w \\W \\s \\S \\d \\D \\p \\P \\N \\v \\V \\h \\H word whitespace" +.IX Item "Backslash sequences" +.PD +If the \f(CW\*(C`/a\*(C'\fR modifier is in effect .., otherwise .., For code points above +255 .., For code points below 256 .., if locale rules are in effect .., if, +instead, Unicode rules are in effect .., otherwise .., If the \f(CW\*(C`/a\*(C'\fR +modifier is in effect .., otherwise .., For code points above 255 .., For +code points below 256 .., if locale rules are in effect .., if, instead, +Unicode rules are in effect .., otherwise .., [1], [2] +.IP "Bracketed Character Classes" 4 +.IX Item "Bracketed Character Classes" +[1], [2], [3], [4], [5], [6], [7], If the \f(CW\*(C`/a\*(C'\fR modifier, is in effect .., +otherwise .., For code points above 255 .., For code points below 256 .., +if locale rules are in effect .., \f(CW\*(C`word\*(C'\fR, \f(CW\*(C`ascii\*(C'\fR, \f(CW\*(C`blank\*(C'\fR, if, instead, +Unicode rules are in effect .., otherwise .. +.RE +.RS 4 +.RE +.SS "perlreref \- Perl Regular Expressions Reference" +.IX Subsection "perlreref - Perl Regular Expressions Reference" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP OPERATORS 4 +.IX Item "OPERATORS" +.IP SYNTAX 4 +.IX Item "SYNTAX" +.IP "ESCAPE SEQUENCES" 4 +.IX Item "ESCAPE SEQUENCES" +.IP "CHARACTER CLASSES" 4 +.IX Item "CHARACTER CLASSES" +.IP ANCHORS 4 +.IX Item "ANCHORS" +.IP QUANTIFIERS 4 +.IX Item "QUANTIFIERS" +.IP "EXTENDED CONSTRUCTS" 4 +.IX Item "EXTENDED CONSTRUCTS" +.IP VARIABLES 4 +.IX Item "VARIABLES" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP THANKS 4 +.IX Item "THANKS" +.PD +.SS "perlref \- Perl references and nested data structures" +.IX Subsection "perlref - Perl references and nested data structures" +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Making References" 4 +.IX Xref "reference, creation referencing" +.IX Item "Making References" +.IP "Using References" 4 +.IX Xref "reference, use dereferencing dereference" +.IX Item "Using References" +.IP "Circular References" 4 +.IX Xref "circular reference reference, circular" +.IX Item "Circular References" +.IP "Symbolic references" 4 +.IX Xref "reference, symbolic reference, soft symbolic reference soft reference" +.IX Item "Symbolic references" +.IP "Not-so-symbolic references" 4 +.IX Item "Not-so-symbolic references" +.IP "Pseudo-hashes: Using an array as a hash" 4 +.IX Xref "pseudo-hash pseudo hash pseudohash" +.IX Item "Pseudo-hashes: Using an array as a hash" +.IP "Function Templates" 4 +.IX Xref "scope, lexical closure lexical lexical scope subroutine, nested sub, nested subroutine, local sub, local" +.IX Item "Function Templates" +.IP "Postfix Dereference Syntax" 4 +.IX Item "Postfix Dereference Syntax" +.IP "Postfix Reference Slicing" 4 +.IX Item "Postfix Reference Slicing" +.IP "Assigning to References" 4 +.IX Item "Assigning to References" +.IP "Declaring a Reference to a Variable" 4 +.IX Item "Declaring a Reference to a Variable" +.RE +.RS 4 +.RE +.IP "WARNING: Don't use references as hash keys" 4 +.IX Xref "reference, string context reference, use as hash key" +.IX Item "WARNING: Don't use references as hash keys" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlform \- Perl formats" +.IX Subsection "perlform - Perl formats" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Text Fields" 4 +.IX Xref "format, text field" +.IX Item "Text Fields" +.IP "Numeric Fields" 4 +.IX Xref "# format, numeric field" +.IX Item "Numeric Fields" +.IP "The Field @* for Variable-Width Multi-Line Text" 4 +.IX Xref "@*" +.IX Item "The Field @* for Variable-Width Multi-Line Text" +.IP "The Field ^* for Variable-Width One-line-at-a-time Text" 4 +.IX Xref "^*" +.IX Item "The Field ^* for Variable-Width One-line-at-a-time Text" +.IP "Specifying Values" 4 +.IX Xref "format, specifying values" +.IX Item "Specifying Values" +.IP "Using Fill Mode" 4 +.IX Xref "format, fill mode" +.IX Item "Using Fill Mode" +.IP "Suppressing Lines Where All Fields Are Void" 4 +.IX Xref "format, suppressing lines" +.IX Item "Suppressing Lines Where All Fields Are Void" +.IP "Repeating Format Lines" 4 +.IX Xref "format, repeating lines" +.IX Item "Repeating Format Lines" +.IP "Top of Form Processing" 4 +.IX Xref "format, top of form top header" +.IX Item "Top of Form Processing" +.IP "Format Variables" 4 +.IX Xref "format variables format, variables" +.IX Item "Format Variables" +.RE +.RS 4 +.RE +.IP NOTES 4 +.IX Item "NOTES" +.RS 4 +.IP Footers 4 +.IX Xref "format, footer footer" +.IX Item "Footers" +.IP "Accessing Formatting Internals" 4 +.IX Xref "format, internals" +.IX Item "Accessing Formatting Internals" +.RE +.RS 4 +.RE +.IP WARNINGS 4 +.IX Item "WARNINGS" +.PD +.SS "perlobj \- Perl object reference" +.IX Subsection "perlobj - Perl object reference" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "An Object is Simply a Data Structure" 4 +.IX Xref "object bless constructor new" +.IX Item "An Object is Simply a Data Structure" +.IP "A Class is Simply a Package" 4 +.IX Xref "class package @ISA inheritance" +.IX Item "A Class is Simply a Package" +.IP "A Method is Simply a Subroutine" 4 +.IX Xref "method" +.IX Item "A Method is Simply a Subroutine" +.IP "Method Invocation" 4 +.IX Xref "invocation method arrow ->" +.IX Item "Method Invocation" +.IP Inheritance 4 +.IX Xref "inheritance" +.IX Item "Inheritance" +.IP "Writing Constructors" 4 +.IX Xref "constructor" +.IX Item "Writing Constructors" +.IP Attributes 4 +.IX Xref "attribute" +.IX Item "Attributes" +.IP "An Aside About Smarter and Safer Code" 4 +.IX Item "An Aside About Smarter and Safer Code" +.IP "Method Call Variations" 4 +.IX Xref "method" +.IX Item "Method Call Variations" +.IP "Invoking Class Methods" 4 +.IX Xref "invocation" +.IX Item "Invoking Class Methods" +.ie n .IP """bless"", ""blessed"", and ""ref""" 4 +.el .IP "\f(CWbless\fR, \f(CWblessed\fR, and \f(CWref\fR" 4 +.IX Item "bless, blessed, and ref" +.IP "The UNIVERSAL Class" 4 +.IX Xref "UNIVERSAL" +.IX Item "The UNIVERSAL Class" +.PD +isa($class) , DOES($role) , can($method) , +VERSION($need) +.IX Xref "isa DOES can VERSION" +.IP AUTOLOAD 4 +.IX Xref "AUTOLOAD" +.IX Item "AUTOLOAD" +.PD 0 +.IP Destructors 4 +.IX Xref "destructor DESTROY" +.IX Item "Destructors" +.IP "Non-Hash Objects" 4 +.IX Item "Non-Hash Objects" +.IP "Inside-Out objects" 4 +.IX Item "Inside-Out objects" +.IP Pseudo-hashes 4 +.IX Item "Pseudo-hashes" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perltie \- how to hide an object class in a simple variable" +.IX Subsection "perltie - how to hide an object class in a simple variable" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Tying Scalars" 4 +.IX Xref "scalar, tying" +.IX Item "Tying Scalars" +.PD +TIESCALAR classname, LIST , FETCH this , STORE this, +value , UNTIE this , DESTROY this +.IX Xref "TIESCALAR FETCH STORE UNTIE DESTROY" +.IP "Tying Arrays" 4 +.IX Xref "array, tying" +.IX Item "Tying Arrays" +TIEARRAY classname, LIST , FETCH this, index , STORE +this, index, value , FETCHSIZE this , STORESIZE this, +count , EXTEND this, count , EXISTS this, key +, DELETE this, key , CLEAR this , PUSH this, LIST + , POP this , SHIFT this , UNSHIFT this, LIST +, SPLICE this, offset, length, LIST , UNTIE this +, DESTROY this +.IX Xref "TIEARRAY FETCH STORE FETCHSIZE STORESIZE EXTEND EXISTS DELETE CLEAR PUSH POP SHIFT UNSHIFT SPLICE UNTIE DESTROY" +.IP "Tying Hashes" 4 +.IX Xref "hash, tying" +.IX 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 , SCALAR this , UNTIE this +, DESTROY this +.IX Xref "TIEHASH FETCH STORE DELETE CLEAR EXISTS FIRSTKEY NEXTKEY SCALAR UNTIE DESTROY" +.IP "Tying FileHandles" 4 +.IX Xref "filehandle, tying" +.IX Item "Tying FileHandles" +TIEHANDLE classname, LIST , WRITE this, LIST , PRINT +this, LIST , PRINTF this, LIST , READ this, LIST , +READLINE this , GETC this , EOF this , CLOSE this +, UNTIE this , DESTROY this +.IX Xref "TIEHANDLE WRITE PRINT PRINTF READ READLINE GETC EOF CLOSE UNTIE DESTROY" +.IP "UNTIE this" 4 +.IX Xref "UNTIE" +.IX Item "UNTIE this" +.PD 0 +.ie n .IP "The ""untie"" Gotcha" 4 +.el .IP "The \f(CWuntie\fR Gotcha" 4 +.IX Xref "untie" +.IX Item "The untie Gotcha" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlclass \- Perl class syntax reference" +.IX Subsection "perlclass - Perl class syntax reference" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP History 4 +.IX Item "History" +.RE +.RS 4 +.RE +.IP KEYWORDS 4 +.IX Item "KEYWORDS" +.RS 4 +.IP class 4 +.IX Item "class" +.IP field 4 +.IX Item "field" +.IP method 4 +.IX Item "method" +.RE +.RS 4 +.RE +.IP ATTRIBUTES 4 +.IX Item "ATTRIBUTES" +.RS 4 +.IP "Class attributes" 4 +.IX Item "Class attributes" +.IP "Field attributes" 4 +.IX Item "Field attributes" +.IP "Method attributes" 4 +.IX Item "Method attributes" +.RE +.RS 4 +.RE +.IP "OBJECT LIFECYCLE" 4 +.IX Item "OBJECT LIFECYCLE" +.RS 4 +.IP Construction 4 +.IX Item "Construction" +.IP Adjustment 4 +.IX Item "Adjustment" +.IP Lifetime 4 +.IX Item "Lifetime" +.IP Destruction 4 +.IX Item "Destruction" +.RE +.RS 4 +.RE +.IP TODO 4 +.IX Item "TODO" +.PD +Roles, Parameters to ADJUST blocks, ADJUST blocks as true blocks, Accessor +generator attributes, Metaprogramming, Extension Customisation +.IP AUTHORS 4 +.IX Item "AUTHORS" +.SS "perldbmfilter \- Perl DBM Filters" +.IX Subsection "perldbmfilter - Perl DBM Filters" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBfilter_store_key\fR, \fBfilter_store_value\fR, \fBfilter_fetch_key\fR, +\&\fBfilter_fetch_value\fR +.RS 4 +.IP "The Filter" 4 +.IX Item "The Filter" +.PD 0 +.IP "An Example: the NULL termination problem." 4 +.IX Item "An Example: the NULL termination problem." +.IP "Another Example: Key is a C int." 4 +.IX Item "Another Example: Key is a C int." +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlipc \- Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores)" +.IX Subsection "perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores)" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Signals 4 +.IX Item "Signals" +.RS 4 +.IP "Handling the SIGHUP Signal in Daemons" 4 +.IX Item "Handling the SIGHUP Signal in Daemons" +.IP "Deferred Signals (Safe Signals)" 4 +.IX Item "Deferred Signals (Safe Signals)" +.PD +Long-running opcodes, Interrupting IO, Restartable system calls, Signals as +"faults", Signals triggered by operating system state +.RE +.RS 4 +.RE +.IP "Named Pipes" 4 +.IX Item "Named Pipes" +.PD 0 +.IP "Using \fBopen()\fR for IPC" 4 +.IX Item "Using open() for IPC" +.RS 4 +.IP Filehandles 4 +.IX Item "Filehandles" +.IP "Background Processes" 4 +.IX Item "Background Processes" +.IP "Complete Dissociation of Child from Parent" 4 +.IX Item "Complete Dissociation of Child from Parent" +.IP "Safe Pipe Opens" 4 +.IX Item "Safe Pipe Opens" +.IP "Avoiding Pipe Deadlocks" 4 +.IX Item "Avoiding Pipe Deadlocks" +.IP "Bidirectional Communication with Another Process" 4 +.IX Item "Bidirectional Communication with Another Process" +.IP "Bidirectional Communication with Yourself" 4 +.IX Item "Bidirectional Communication with Yourself" +.RE +.RS 4 +.RE +.IP "Sockets: Client/Server Communication" 4 +.IX Item "Sockets: Client/Server Communication" +.RS 4 +.IP "Internet Line Terminators" 4 +.IX Item "Internet Line Terminators" +.IP "Internet TCP Clients and Servers" 4 +.IX Item "Internet TCP Clients and Servers" +.IP "Unix-Domain TCP Clients and Servers" 4 +.IX Item "Unix-Domain TCP Clients and Servers" +.RE +.RS 4 +.RE +.IP "TCP Clients with IO::Socket" 4 +.IX Item "TCP Clients with IO::Socket" +.RS 4 +.IP "A Simple Client" 4 +.IX Item "A Simple Client" +.PD +\&\f(CW\*(C`Proto\*(C'\fR, \f(CW\*(C`PeerAddr\*(C'\fR, \f(CW\*(C`PeerPort\*(C'\fR +.IP "A Webget Client" 4 +.IX Item "A Webget Client" +.PD 0 +.IP "Interactive Client with IO::Socket" 4 +.IX Item "Interactive Client with IO::Socket" +.RE +.RS 4 +.RE +.IP "TCP Servers with IO::Socket" 4 +.IX Item "TCP Servers with IO::Socket" +.PD +Proto, LocalPort, Listen, Reuse +.IP "UDP: Message Passing" 4 +.IX Item "UDP: Message Passing" +.PD 0 +.IP "SysV IPC" 4 +.IX Item "SysV IPC" +.IP NOTES 4 +.IX Item "NOTES" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlfork \- Perl's \fBfork()\fP emulation" +.IX Subsection "perlfork - Perl's fork() emulation" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Behavior of other Perl features in forked pseudo-processes" 4 +.IX Item "Behavior of other Perl features in forked pseudo-processes" +.PD +$$ or \f(CW$PROCESS_ID\fR, \f(CW%ENV\fR, \fBchdir()\fR and all other builtins that accept +filenames, \fBwait()\fR and \fBwaitpid()\fR, \fBkill()\fR, \fBexec()\fR, \fBexit()\fR, Open handles to +files, directories and network sockets +.IP "Resource limits" 4 +.IX Item "Resource limits" +.PD 0 +.IP "Killing the parent process" 4 +.IX Item "Killing the parent process" +.IP "Lifetime of the parent process and pseudo-processes" 4 +.IX Item "Lifetime of the parent process and pseudo-processes" +.RE +.RS 4 +.RE +.IP "CAVEATS AND LIMITATIONS" 4 +.IX Item "CAVEATS AND LIMITATIONS" +.PD +BEGIN blocks, Open filehandles, Open directory handles, Forking pipe \fBopen()\fR +not yet implemented, Global state maintained by XSUBs, Interpreter embedded +in larger application, Thread-safety of extensions +.IP "PORTABILITY CAVEATS" 4 +.IX Item "PORTABILITY CAVEATS" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlnumber \- semantics of numbers and numeric operations in Perl" +.IX Subsection "perlnumber - semantics of numbers and numeric operations in Perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Storing numbers" 4 +.IX Item "Storing numbers" +.IP "Numeric operators and numeric conversions" 4 +.IX Item "Numeric operators and numeric conversions" +.IP "Flavors of Perl numeric operations" 4 +.IX Item "Flavors of Perl numeric operations" +.PD +Arithmetic operators, ++, Arithmetic operators during \f(CW\*(C`use integer\*(C'\fR, Other +mathematical operators, Bitwise operators, Bitwise operators during \f(CW\*(C`use +integer\*(C'\fR, Operators which expect an integer, Operators which expect a +string +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlthrtut \- Tutorial on threads in Perl" +.IX Subsection "perlthrtut - Tutorial on threads in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "What Is A Thread Anyway?" 4 +.IX Item "What Is A Thread Anyway?" +.IP "Threaded Program Models" 4 +.IX Item "Threaded Program Models" +.RS 4 +.IP Boss/Worker 4 +.IX Item "Boss/Worker" +.IP "Work Crew" 4 +.IX Item "Work Crew" +.IP Pipeline 4 +.IX Item "Pipeline" +.RE +.RS 4 +.RE +.IP "What kind of threads are Perl threads?" 4 +.IX Item "What kind of threads are Perl threads?" +.IP "Thread-Safe Modules" 4 +.IX Item "Thread-Safe Modules" +.IP "Thread Basics" 4 +.IX Item "Thread Basics" +.RS 4 +.IP "Basic Thread Support" 4 +.IX Item "Basic Thread Support" +.IP "A Note about the Examples" 4 +.IX Item "A Note about the Examples" +.IP "Creating Threads" 4 +.IX Item "Creating Threads" +.IP "Waiting For A Thread To Exit" 4 +.IX Item "Waiting For A Thread To Exit" +.IP "Ignoring A Thread" 4 +.IX Item "Ignoring A Thread" +.IP "Process and Thread Termination" 4 +.IX Item "Process and Thread Termination" +.RE +.RS 4 +.RE +.IP "Threads And Data" 4 +.IX Item "Threads And Data" +.RS 4 +.IP "Shared And Unshared Data" 4 +.IX Item "Shared And Unshared Data" +.IP "Thread Pitfalls: Races" 4 +.IX Item "Thread Pitfalls: Races" +.RE +.RS 4 +.RE +.IP "Synchronization and control" 4 +.IX Item "Synchronization and control" +.RS 4 +.IP "Controlling access: \fBlock()\fR" 4 +.IX Item "Controlling access: lock()" +.IP "A Thread Pitfall: Deadlocks" 4 +.IX Item "A Thread Pitfall: Deadlocks" +.IP "Queues: Passing Data Around" 4 +.IX Item "Queues: Passing Data Around" +.IP "Semaphores: Synchronizing Data Access" 4 +.IX Item "Semaphores: Synchronizing Data Access" +.IP "Basic semaphores" 4 +.IX Item "Basic semaphores" +.IP "Advanced Semaphores" 4 +.IX Item "Advanced Semaphores" +.IP "Waiting for a Condition" 4 +.IX Item "Waiting for a Condition" +.IP "Giving up control" 4 +.IX Item "Giving up control" +.RE +.RS 4 +.RE +.IP "General Thread Utility Routines" 4 +.IX Item "General Thread Utility Routines" +.RS 4 +.IP "What Thread Am I In?" 4 +.IX Item "What Thread Am I In?" +.IP "Thread IDs" 4 +.IX Item "Thread IDs" +.IP "Are These Threads The Same?" 4 +.IX Item "Are These Threads The Same?" +.IP "What Threads Are Running?" 4 +.IX Item "What Threads Are Running?" +.RE +.RS 4 +.RE +.IP "A Complete Example" 4 +.IX Item "A Complete Example" +.IP "Different implementations of threads" 4 +.IX Item "Different implementations of threads" +.IP "Performance considerations" 4 +.IX Item "Performance considerations" +.IP "Process-scope Changes" 4 +.IX Item "Process-scope Changes" +.IP "Thread-Safety of System Libraries" 4 +.IX Item "Thread-Safety of System Libraries" +.IP Conclusion 4 +.IX Item "Conclusion" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP Bibliography 4 +.IX Item "Bibliography" +.RS 4 +.IP "Introductory Texts" 4 +.IX Item "Introductory Texts" +.IP "OS-Related References" 4 +.IX Item "OS-Related References" +.IP "Other References" 4 +.IX Item "Other References" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP Copyrights 4 +.IX Item "Copyrights" +.PD +.SS "perlport \- Writing portable Perl" +.IX Subsection "perlport - Writing portable Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +Not all Perl programs have to be portable, Nearly all of Perl already \fIis\fR +portable +.IP ISSUES 4 +.IX Item "ISSUES" +.RS 4 +.PD 0 +.IP Newlines 4 +.IX Item "Newlines" +.IP "Numbers endianness and Width" 4 +.IX Item "Numbers endianness and Width" +.IP "Files and Filesystems" 4 +.IX Item "Files and Filesystems" +.IP "System Interaction" 4 +.IX Item "System Interaction" +.IP "Command names versus file pathnames" 4 +.IX Item "Command names versus file pathnames" +.IP Networking 4 +.IX Item "Networking" +.IP "Interprocess Communication (IPC)" 4 +.IX Item "Interprocess Communication (IPC)" +.IP "External Subroutines (XS)" 4 +.IX Item "External Subroutines (XS)" +.IP "Standard Modules" 4 +.IX Item "Standard Modules" +.IP "Time and Date" 4 +.IX Item "Time and Date" +.IP "Character sets and character encoding" 4 +.IX Item "Character sets and character encoding" +.IP Internationalisation 4 +.IX Item "Internationalisation" +.IP "System Resources" 4 +.IX Item "System Resources" +.IP Security 4 +.IX Item "Security" +.IP Style 4 +.IX Item "Style" +.RE +.RS 4 +.RE +.IP "CPAN Testers" 4 +.IX Item "CPAN Testers" +.IP PLATFORMS 4 +.IX Item "PLATFORMS" +.RS 4 +.IP Unix 4 +.IX Item "Unix" +.IP "DOS and Derivatives" 4 +.IX Item "DOS and Derivatives" +.IP VMS 4 +.IX Item "VMS" +.IP VOS 4 +.IX Item "VOS" +.IP "EBCDIC Platforms" 4 +.IX Item "EBCDIC Platforms" +.IP "Acorn RISC OS" 4 +.IX Item "Acorn RISC OS" +.IP "Other perls" 4 +.IX Item "Other perls" +.RE +.RS 4 +.RE +.IP "FUNCTION IMPLEMENTATIONS" 4 +.IX Item "FUNCTION IMPLEMENTATIONS" +.RS 4 +.IP "Alphabetical Listing of Perl Functions" 4 +.IX Item "Alphabetical Listing of Perl Functions" +.PD +\&\-\fIX\fR, alarm, atan2, binmode, chdir, chmod, chown, chroot, crypt, dbmclose, +dbmopen, dump, exec, exit, fcntl, flock, fork, getlogin, getpgrp, getppid, +getpriority, getpwnam, getgrnam, getnetbyname, getpwuid, getgrgid, +getnetbyaddr, getprotobynumber, getpwent, getgrent, gethostbyname, +gethostent, getnetent, getprotoent, getservent, seekdir, sethostent, +setnetent, setprotoent, setservent, endpwent, endgrent, endhostent, +endnetent, endprotoent, endservent, getsockopt, glob, gmtime, ioctl, kill, +link, localtime, lstat, msgctl, msgget, msgsnd, msgrcv, open, readlink, +rename, rewinddir, select, semctl, semget, semop, setgrent, setpgrp, +setpriority, setpwent, setsockopt, shmctl, shmget, shmread, shmwrite, +sleep, socketpair, stat, symlink, syscall, sysopen, system, telldir, times, +truncate, umask, utime, wait, waitpid +.RE +.RS 4 +.RE +.IP "Supported Platforms" 4 +.IX Item "Supported Platforms" +Linux (x86, ARM, IA64), HP-UX, AIX, Win32, Windows 2000, Windows XP, +Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, Cygwin, +Solaris (x86, SPARC), OpenVMS, Alpha (7.2 and later), I64 (8.2 and later), +NetBSD, FreeBSD, Debian GNU/kFreeBSD, Haiku, Irix (6.5. What else?), +OpenBSD, Dragonfly BSD, Midnight BSD, QNX Neutrino RTOS (6.5.0), MirOS BSD, +Stratus OpenVOS (17.0 or later), time_t issues that may or may not be +fixed, Stratus VOS / OpenVOS, AIX, Android, FreeMINT +.IP "EOL Platforms" 4 +.IX Item "EOL Platforms" +.RS 4 +.PD 0 +.IP "(Perl 5.37.1)" 4 +.IX Item "(Perl 5.37.1)" +.PD +Ultrix +.IP "(Perl 5.36)" 4 +.IX Item "(Perl 5.36)" +NetWare, DOS/DJGPP, AT&T UWIN +.IP "(Perl 5.20)" 4 +.IX Item "(Perl 5.20)" +AT&T 3b1 +.IP "(Perl 5.14)" 4 +.IX Item "(Perl 5.14)" +Windows 95, Windows 98, Windows ME, Windows NT4 +.IP "(Perl 5.12)" 4 +.IX Item "(Perl 5.12)" +Atari MiNT, Apollo Domain/OS, Apple Mac OS 8/9, Tenon Machten +.RE +.RS 4 +.RE +.IP "Supported Platforms (Perl 5.8)" 4 +.IX Item "Supported Platforms (Perl 5.8)" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "AUTHORS / CONTRIBUTORS" 4 +.IX Item "AUTHORS / CONTRIBUTORS" +.PD +.SS "perllocale \- Perl locale handling (internationalization and localization)" +.IX Subsection "perllocale - Perl locale handling (internationalization and localization)" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "WHAT IS A LOCALE" 4 +.IX Item "WHAT IS A LOCALE" +.PD +Category \f(CW\*(C`LC_NUMERIC\*(C'\fR: Numeric formatting, Category \f(CW\*(C`LC_MONETARY\*(C'\fR: +Formatting of monetary amounts, Category \f(CW\*(C`LC_TIME\*(C'\fR: Date/Time formatting, +Category \f(CW\*(C`LC_MESSAGES\*(C'\fR: Error and other messages, Category \f(CW\*(C`LC_COLLATE\*(C'\fR: +Collation, Category \f(CW\*(C`LC_CTYPE\*(C'\fR: Character Types, Other categories +.IP "PREPARING TO USE LOCALES" 4 +.IX Item "PREPARING TO USE LOCALES" +.PD 0 +.IP "USING LOCALES" 4 +.IX Item "USING LOCALES" +.RS 4 +.ie n .IP "The ""use locale"" pragma" 4 +.el .IP "The \f(CW""use locale""\fR pragma" 4 +.IX Item "The ""use locale"" pragma" +.PD +\&\fBNot within the scope of \fR\f(CB"use locale"\fR, \fBLingering effects of \fR\f(CB\*(C`use\ locale\*(C'\fR\fB\fR, \fBUnder \fR\f(CB\*(C`"use locale";\*(C'\fR\fB\fR +.IP "The setlocale function" 4 +.IX Item "The setlocale function" +.PD 0 +.IP "Multi-threaded operation" 4 +.IX Item "Multi-threaded operation" +.IP "Finding locales" 4 +.IX Item "Finding locales" +.IP "LOCALE PROBLEMS" 4 +.IX Item "LOCALE PROBLEMS" +.IP "Testing for broken locales" 4 +.IX Item "Testing for broken locales" +.IP "Temporarily fixing locale problems" 4 +.IX Item "Temporarily fixing locale problems" +.IP "Permanently fixing locale problems" 4 +.IX Item "Permanently fixing locale problems" +.IP "Permanently fixing your system's locale configuration" 4 +.IX Item "Permanently fixing your system's locale configuration" +.IP "Fixing system locale configuration" 4 +.IX Item "Fixing system locale configuration" +.IP "The localeconv function" 4 +.IX Item "The localeconv function" +.IP I18N::Langinfo 4 +.IX Item "I18N::Langinfo" +.RE +.RS 4 +.RE +.IP "LOCALE CATEGORIES" 4 +.IX Item "LOCALE CATEGORIES" +.RS 4 +.ie n .IP "Category ""LC_COLLATE"": Collation: Text Comparisons and Sorting" 4 +.el .IP "Category \f(CWLC_COLLATE\fR: Collation: Text Comparisons and Sorting" 4 +.IX Item "Category LC_COLLATE: Collation: Text Comparisons and Sorting" +.ie n .IP "Category ""LC_CTYPE"": Character Types" 4 +.el .IP "Category \f(CWLC_CTYPE\fR: Character Types" 4 +.IX Item "Category LC_CTYPE: Character Types" +.ie n .IP "Category ""LC_NUMERIC"": Numeric Formatting" 4 +.el .IP "Category \f(CWLC_NUMERIC\fR: Numeric Formatting" 4 +.IX Item "Category LC_NUMERIC: Numeric Formatting" +.ie n .IP "Category ""LC_MONETARY"": Formatting of monetary amounts" 4 +.el .IP "Category \f(CWLC_MONETARY\fR: Formatting of monetary amounts" 4 +.IX Item "Category LC_MONETARY: Formatting of monetary amounts" +.ie n .IP "Category ""LC_TIME"": Respresentation of time" 4 +.el .IP "Category \f(CWLC_TIME\fR: Respresentation of time" 4 +.IX Item "Category LC_TIME: Respresentation of time" +.IP "Other categories" 4 +.IX Item "Other categories" +.RE +.RS 4 +.RE +.IP SECURITY 4 +.IX Item "SECURITY" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.PD +PERL_SKIP_LOCALE_INIT, PERL_BADLANG, \f(CW\*(C`LC_ALL\*(C'\fR, \f(CW\*(C`LANGUAGE\*(C'\fR, \f(CW\*(C`LC_CTYPE\*(C'\fR, +\&\f(CW\*(C`LC_COLLATE\*(C'\fR, \f(CW\*(C`LC_MONETARY\*(C'\fR, \f(CW\*(C`LC_NUMERIC\*(C'\fR, \f(CW\*(C`LC_TIME\*(C'\fR, \f(CW\*(C`LANG\*(C'\fR +.RS 4 +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP NOTES 4 +.IX Item "NOTES" +.RS 4 +.ie n .IP "String ""eval"" and ""LC_NUMERIC""" 4 +.el .IP "String \f(CWeval\fR and \f(CWLC_NUMERIC\fR" 4 +.IX Item "String eval and LC_NUMERIC" +.IP "Backward compatibility" 4 +.IX Item "Backward compatibility" +.IP "I18N:Collate obsolete" 4 +.IX Item "I18N:Collate obsolete" +.IP "Sort speed and memory use impacts" 4 +.IX Item "Sort speed and memory use impacts" +.IP "Freely available locale definitions" 4 +.IX Item "Freely available locale definitions" +.IP "I18n and l10n" 4 +.IX Item "I18n and l10n" +.IP "An imperfect standard" 4 +.IX Item "An imperfect standard" +.RE +.RS 4 +.RE +.IP "Unicode and UTF\-8" 4 +.IX Item "Unicode and UTF-8" +.IP BUGS 4 +.IX Item "BUGS" +.RS 4 +.ie n .IP "Collation of strings containing embedded ""NUL"" characters" 4 +.el .IP "Collation of strings containing embedded \f(CWNUL\fR characters" 4 +.IX Item "Collation of strings containing embedded NUL characters" +.IP Multi-threaded 4 +.IX Item "Multi-threaded" +.IP "Broken systems" 4 +.IX Item "Broken systems" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perluniintro \- Perl Unicode introduction" +.IX Subsection "perluniintro - Perl Unicode introduction" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP Unicode 4 +.IX Item "Unicode" +.IP "Perl's Unicode Support" 4 +.IX Item "Perl's Unicode Support" +.IP "Perl's Unicode Model" 4 +.IX Item "Perl's Unicode Model" +.IP "Unicode and EBCDIC" 4 +.IX Item "Unicode and EBCDIC" +.IP "Creating Unicode" 4 +.IX Item "Creating Unicode" +.IP "Handling Unicode" 4 +.IX Item "Handling Unicode" +.IP "Legacy Encodings" 4 +.IX Item "Legacy Encodings" +.IP "Unicode I/O" 4 +.IX Item "Unicode I/O" +.IP "Displaying Unicode As Text" 4 +.IX Item "Displaying Unicode As Text" +.IP "Special Cases" 4 +.IX Item "Special Cases" +.IP "Advanced Topics" 4 +.IX Item "Advanced Topics" +.IP Miscellaneous 4 +.IX Item "Miscellaneous" +.IP "Questions With Answers" 4 +.IX Item "Questions With Answers" +.IP "Hexadecimal Notation" 4 +.IX Item "Hexadecimal Notation" +.IP "Further Resources" 4 +.IX Item "Further Resources" +.RE +.RS 4 +.RE +.IP "UNICODE IN OLDER PERLS" 4 +.IX Item "UNICODE IN OLDER PERLS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP ACKNOWLEDGMENTS 4 +.IX Item "ACKNOWLEDGMENTS" +.IP "AUTHOR, COPYRIGHT, AND LICENSE" 4 +.IX Item "AUTHOR, COPYRIGHT, AND LICENSE" +.PD +.SS "perlunicode \- Unicode support in Perl" +.IX Subsection "perlunicode - Unicode support in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Important Caveats" 4 +.IX Item "Important Caveats" +.PD +Safest if you \f(CW\*(C`use feature \*(Aqunicode_strings\*(Aq\*(C'\fR, Input and Output Layers, +You must convert your non-ASCII, non\-UTF\-8 Perl scripts to be UTF\-8, \f(CW\*(C`use +utf8\*(C'\fR still needed to enable UTF\-8 in +scripts, UTF\-16 scripts autodetected +.IP "Byte and Character Semantics" 4 +.IX Item "Byte and Character Semantics" +.PD 0 +.IP "ASCII Rules versus Unicode Rules" 4 +.IX Item "ASCII Rules versus Unicode Rules" +.PD +When the string has been upgraded to UTF\-8, There are additional methods +for regular expression patterns +.IP "Extended Grapheme Clusters (Logical characters)" 4 +.IX Item "Extended Grapheme Clusters (Logical characters)" +.PD 0 +.IP "Unicode Character Properties" 4 +.IX Item "Unicode Character Properties" +.PD +\&\fR\f(CB\*(C`\ep{All}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Alnum}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Any}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{ASCII}\*(C'\fR\fB\fR, +\&\fB\fR\f(CB\*(C`\ep{Assigned}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Blank}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Decomposition_Type: +Non_Canonical}\*(C'\fR\fB\fR (Short: \f(CW\*(C`\ep{Dt=NonCanon}\*(C'\fR), \fB\fR\f(CB\*(C`\ep{Graph}\*(C'\fR\fB\fR, +\&\fB\fR\f(CB\*(C`\ep{HorizSpace}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{In=*}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{PerlSpace}\*(C'\fR\fB\fR, +\&\fB\fR\f(CB\*(C`\ep{PerlWord}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Posix...}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Present_In: *}\*(C'\fR\fB\fR (Short: +\&\f(CW\*(C`\ep{In=*}\*(C'\fR), \fB\fR\f(CB\*(C`\ep{Print}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{SpacePerl}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Title}\*(C'\fR\fB\fR and +\&\fB\fR\f(CB\*(C`\ep{Titlecase}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{Unicode}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{VertSpace}\*(C'\fR\fB\fR, +\&\fB\fR\f(CB\*(C`\ep{Word}\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`\ep{XPosix...}\*(C'\fR\fB\fR +.ie n .IP "Comparison of ""\eN{...}"" and ""\ep{name=...}""" 4 +.el .IP "Comparison of \f(CW\eN{...}\fR and \f(CW\ep{name=...}\fR" 4 +.IX Item "Comparison of N{...} and p{name=...}" +[1], [2], [3], [4], [5] +.IP "Wildcards in Property Values" 4 +.IX Item "Wildcards in Property Values" +.PD 0 +.IP "User-Defined Character Properties" 4 +.IX Item "User-Defined Character Properties" +.IP "User-Defined Case Mappings (for serious hackers only)" 4 +.IX Item "User-Defined Case Mappings (for serious hackers only)" +.IP "Character Encodings for Input and Output" 4 +.IX Item "Character Encodings for Input and Output" +.IP "Unicode Regular Expression Support Level" 4 +.IX Item "Unicode Regular Expression Support Level" +.PD +[1] \f(CW\*(C`\eN{U+...}\*(C'\fR and \f(CW\*(C`\ex{...}\*(C'\fR, [2] \f(CW\*(C`\ep{...}\*(C'\fR \f(CW\*(C`\eP{...}\*(C'\fR. This +requirement is for a minimal list of properties. Perl supports these. See +R2.7 for other properties, [3], [4], [5] \f(CW\*(C`\eb\*(C'\fR \f(CW\*(C`\eB\*(C'\fR meet most, but not +all, the details of this requirement, but \f(CW\*(C`\eb{wb}\*(C'\fR and \f(CW\*(C`\eB{wb}\*(C'\fR do, as +well as the stricter R2.3, [6], [7], [8] UTF\-8/UTF\-EBDDIC used in Perl +allows not only \f(CW\*(C`U+10000\*(C'\fR to \f(CW\*(C`U+10FFFF\*(C'\fR but also beyond \f(CW\*(C`U+10FFFF\*(C'\fR, [9] +Unicode has rewritten this portion of UTS#18 to say that getting canonical +equivalence (see UAX#15 "Unicode Normalization +Forms" <https://www.unicode.org/reports/tr15>) is basically to be done at +the programmer level. Use NFD to write both your regular expressions and +text to match them against (you can use Unicode::Normalize), [10] Perl +has \f(CW\*(C`\eX\*(C'\fR and \f(CW\*(C`\eb{gcb}\*(C'\fR. Unicode has retracted their "Grapheme Cluster +Mode", and recently added string properties, which Perl does not yet +support, [11] see UAX#29 "Unicode Text +Segmentation" <https://www.unicode.org/reports/tr29>,, [12] see +"Wildcards in Property Values" in perlunicode above, [13] Perl supports all +the properties in the Unicode Character Database (UCD). It does not yet +support the listed properties that come from other Unicode sources, [14] +The only optional property that Perl supports is Named Sequence. None of +these properties are in the UCD +.IP "Unicode Encodings" 4 +.IX Item "Unicode Encodings" +.PD 0 +.IP "Noncharacter code points" 4 +.IX Item "Noncharacter code points" +.IP "Beyond Unicode code points" 4 +.IX Item "Beyond Unicode code points" +.IP "Security Implications of Unicode" 4 +.IX Item "Security Implications of Unicode" +.IP "Unicode in Perl on EBCDIC" 4 +.IX Item "Unicode in Perl on EBCDIC" +.IP Locales 4 +.IX Item "Locales" +.IP "When Unicode Does Not Happen" 4 +.IX Item "When Unicode Does Not Happen" +.IP "The ""Unicode Bug""" 4 +.IX Item "The ""Unicode Bug""" +.IP "Forcing Unicode in Perl (Or Unforcing Unicode in Perl)" 4 +.IX Item "Forcing Unicode in Perl (Or Unforcing Unicode in Perl)" +.IP "Using Unicode in XS" 4 +.IX Item "Using Unicode in XS" +.IP "Hacking Perl to work on earlier Unicode versions (for very serious hackers only)" 4 +.IX Item "Hacking Perl to work on earlier Unicode versions (for very serious hackers only)" +.IP "Porting code from perl\-5.6.X" 4 +.IX Item "Porting code from perl-5.6.X" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.RS 4 +.IP "Interaction with Extensions" 4 +.IX Item "Interaction with Extensions" +.IP Speed 4 +.IX Item "Speed" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlunicook \- cookbookish examples of handling Unicode in Perl" +.IX Subsection "perlunicook - cookbookish examples of handling Unicode in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "℞ 0: Standard preamble" 4 +.IX Item "℞ 0: Standard preamble" +.IP "℞ 1: Generic Unicode-savvy filter" 4 +.IX Item "℞ 1: Generic Unicode-savvy filter" +.IP "℞ 2: Fine-tuning Unicode warnings" 4 +.IX Item "℞ 2: Fine-tuning Unicode warnings" +.IP "℞ 3: Declare source in utf8 for identifiers and literals" 4 +.IX Item "℞ 3: Declare source in utf8 for identifiers and literals" +.IP "℞ 4: Characters and their numbers" 4 +.IX Item "℞ 4: Characters and their numbers" +.IP "℞ 5: Unicode literals by character number" 4 +.IX Item "℞ 5: Unicode literals by character number" +.IP "℞ 6: Get character name by number" 4 +.IX Item "℞ 6: Get character name by number" +.IP "℞ 7: Get character number by name" 4 +.IX Item "℞ 7: Get character number by name" +.IP "℞ 8: Unicode named characters" 4 +.IX Item "℞ 8: Unicode named characters" +.IP "℞ 9: Unicode named sequences" 4 +.IX Item "℞ 9: Unicode named sequences" +.IP "℞ 10: Custom named characters" 4 +.IX Item "℞ 10: Custom named characters" +.IP "℞ 11: Names of CJK codepoints" 4 +.IX Item "℞ 11: Names of CJK codepoints" +.IP "℞ 12: Explicit encode/decode" 4 +.IX Item "℞ 12: Explicit encode/decode" +.IP "℞ 13: Decode program arguments as utf8" 4 +.IX Item "℞ 13: Decode program arguments as utf8" +.IP "℞ 14: Decode program arguments as locale encoding" 4 +.IX Item "℞ 14: Decode program arguments as locale encoding" +.IP "℞ 15: Declare STD{IN,OUT,ERR} to be utf8" 4 +.IX Item "℞ 15: Declare STD{IN,OUT,ERR} to be utf8" +.IP "℞ 16: Declare STD{IN,OUT,ERR} to be in locale encoding" 4 +.IX Item "℞ 16: Declare STD{IN,OUT,ERR} to be in locale encoding" +.IP "℞ 17: Make file I/O default to utf8" 4 +.IX Item "℞ 17: Make file I/O default to utf8" +.IP "℞ 18: Make all I/O and args default to utf8" 4 +.IX Item "℞ 18: Make all I/O and args default to utf8" +.IP "℞ 19: Open file with specific encoding" 4 +.IX Item "℞ 19: Open file with specific encoding" +.IP "℞ 20: Unicode casing" 4 +.IX Item "℞ 20: Unicode casing" +.IP "℞ 21: Unicode case-insensitive comparisons" 4 +.IX Item "℞ 21: Unicode case-insensitive comparisons" +.IP "℞ 22: Match Unicode linebreak sequence in regex" 4 +.IX Item "℞ 22: Match Unicode linebreak sequence in regex" +.IP "℞ 23: Get character category" 4 +.IX Item "℞ 23: Get character category" +.IP "℞ 24: Disabling Unicode-awareness in builtin charclasses" 4 +.IX Item "℞ 24: Disabling Unicode-awareness in builtin charclasses" +.IP "℞ 25: Match Unicode properties in regex with \ep, \eP" 4 +.IX Item "℞ 25: Match Unicode properties in regex with p, P" +.IP "℞ 26: Custom character properties" 4 +.IX Item "℞ 26: Custom character properties" +.IP "℞ 27: Unicode normalization" 4 +.IX Item "℞ 27: Unicode normalization" +.IP "℞ 28: Convert non-ASCII Unicode numerics" 4 +.IX Item "℞ 28: Convert non-ASCII Unicode numerics" +.IP "℞ 29: Match Unicode grapheme cluster in regex" 4 +.IX Item "℞ 29: Match Unicode grapheme cluster in regex" +.IP "℞ 30: Extract by grapheme instead of by codepoint (regex)" 4 +.IX Item "℞ 30: Extract by grapheme instead of by codepoint (regex)" +.IP "℞ 31: Extract by grapheme instead of by codepoint (substr)" 4 +.IX Item "℞ 31: Extract by grapheme instead of by codepoint (substr)" +.IP "℞ 32: Reverse string by grapheme" 4 +.IX Item "℞ 32: Reverse string by grapheme" +.IP "℞ 33: String length in graphemes" 4 +.IX Item "℞ 33: String length in graphemes" +.IP "℞ 34: Unicode column-width for printing" 4 +.IX Item "℞ 34: Unicode column-width for printing" +.IP "℞ 35: Unicode collation" 4 +.IX Item "℞ 35: Unicode collation" +.IP "℞ 36: Case\- \fIand\fR accent-insensitive Unicode sort" 4 +.IX Item "℞ 36: Case- and accent-insensitive Unicode sort" +.IP "℞ 37: Unicode locale collation" 4 +.IX Item "℞ 37: Unicode locale collation" +.ie n .IP "℞ 38: Making ""cmp"" work on text instead of codepoints" 4 +.el .IP "℞ 38: Making \f(CWcmp\fR work on text instead of codepoints" 4 +.IX Item "℞ 38: Making cmp work on text instead of codepoints" +.IP "℞ 39: Case\- \fIand\fR accent-insensitive comparisons" 4 +.IX Item "℞ 39: Case- and accent-insensitive comparisons" +.IP "℞ 40: Case\- \fIand\fR accent-insensitive locale comparisons" 4 +.IX Item "℞ 40: Case- and accent-insensitive locale comparisons" +.IP "℞ 41: Unicode linebreaking" 4 +.IX Item "℞ 41: Unicode linebreaking" +.IP "℞ 42: Unicode text in DBM hashes, the tedious way" 4 +.IX Item "℞ 42: Unicode text in DBM hashes, the tedious way" +.IP "℞ 43: Unicode text in DBM hashes, the easy way" 4 +.IX Item "℞ 43: Unicode text in DBM hashes, the easy way" +.IP "℞ 44: PROGRAM: Demo of Unicode collation and printing" 4 +.IX Item "℞ 44: PROGRAM: Demo of Unicode collation and printing" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +§3.13 Default Case Algorithms, page 113; §4.2 Case, pages 120–122; +Case Mappings, page 166–172, especially Caseless Matching starting on +page 170, UAX #44: Unicode Character Database, UTS #18: Unicode Regular +Expressions, UAX #15: Unicode Normalization Forms, UTS #10: Unicode +Collation Algorithm, UAX #29: Unicode Text Segmentation, UAX #14: Unicode +Line Breaking Algorithm, UAX #11: East Asian Width +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "COPYRIGHT AND LICENCE" 4 +.IX Item "COPYRIGHT AND LICENCE" +.IP "REVISION HISTORY" 4 +.IX Item "REVISION HISTORY" +.PD +.SS "perlunifaq \- Perl Unicode FAQ" +.IX Subsection "perlunifaq - Perl Unicode FAQ" +.IP "Q and A" 4 +.IX Item "Q and A" +.RS 4 +.PD 0 +.IP "perlunitut isn't really a Unicode tutorial, is it?" 4 +.IX Item "perlunitut isn't really a Unicode tutorial, is it?" +.IP "What character encodings does Perl support?" 4 +.IX Item "What character encodings does Perl support?" +.IP "Which version of perl should I use?" 4 +.IX Item "Which version of perl should I use?" +.IP "What about binary data, like images?" 4 +.IX Item "What about binary data, like images?" +.IP "When should I decode or encode?" 4 +.IX Item "When should I decode or encode?" +.IP "What if I don't decode?" 4 +.IX Item "What if I don't decode?" +.IP "What if I don't encode?" 4 +.IX Item "What if I don't encode?" +.PD +If the string's characters are all code point 255 or lower, Perl outputs +bytes that match those code points. This is what happens with encoded +strings. It can also, though, happen with unencoded strings that happen to +be all code point 255 or lower, Otherwise, Perl outputs the string encoded +as UTF\-8. This only happens with strings you neglected to encode. Since +that should not happen, Perl also throws a "wide character" warning in this +case +.IP "Is there a way to automatically decode or encode?" 4 +.IX Item "Is there a way to automatically decode or encode?" +.PD 0 +.IP "What if I don't know which encoding was used?" 4 +.IX Item "What if I don't know which encoding was used?" +.IP "Can I use Unicode in my Perl sources?" 4 +.IX Item "Can I use Unicode in my Perl sources?" +.IP "Data::Dumper doesn't restore the UTF8 flag; is it broken?" 4 +.IX Item "Data::Dumper doesn't restore the UTF8 flag; is it broken?" +.IP "Why do regex character classes sometimes match only in the ASCII range?" 4 +.IX Item "Why do regex character classes sometimes match only in the ASCII range?" +.IP "Why do some characters not uppercase or lowercase correctly?" 4 +.IX Item "Why do some characters not uppercase or lowercase correctly?" +.IP "How can I determine if a string is a text string or a binary string?" 4 +.IX Item "How can I determine if a string is a text string or a binary string?" +.IP "How do I convert from encoding FOO to encoding BAR?" 4 +.IX Item "How do I convert from encoding FOO to encoding BAR?" +.ie n .IP "What are ""decode_utf8"" and ""encode_utf8""?" 4 +.el .IP "What are \f(CWdecode_utf8\fR and \f(CWencode_utf8\fR?" 4 +.IX Item "What are decode_utf8 and encode_utf8?" +.IP "What is a ""wide character""?" 4 +.IX Item "What is a ""wide character""?" +.RE +.RS 4 +.RE +.IP INTERNALS 4 +.IX Item "INTERNALS" +.RS 4 +.IP "What is ""the UTF8 flag""?" 4 +.IX Item "What is ""the UTF8 flag""?" +.ie n .IP "What about the ""use bytes"" pragma?" 4 +.el .IP "What about the \f(CWuse bytes\fR pragma?" 4 +.IX Item "What about the use bytes pragma?" +.ie n .IP "What about the ""use encoding"" pragma?" 4 +.el .IP "What about the \f(CWuse encoding\fR pragma?" 4 +.IX Item "What about the use encoding pragma?" +.ie n .IP "What is the difference between "":encoding"" and "":utf8""?" 4 +.el .IP "What is the difference between \f(CW:encoding\fR and \f(CW:utf8\fR?" 4 +.IX Item "What is the difference between :encoding and :utf8?" +.ie n .IP "What's the difference between ""UTF\-8"" and ""utf8""?" 4 +.el .IP "What's the difference between \f(CWUTF\-8\fR and \f(CWutf8\fR?" 4 +.IX Item "What's the difference between UTF-8 and utf8?" +.IP "I lost track; what encoding is the internal format really?" 4 +.IX Item "I lost track; what encoding is the internal format really?" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perluniprops \- Index of Unicode Version 15.0.0 character properties in Perl" +.IX Subsection "perluniprops - Index of Unicode Version 15.0.0 character properties in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.ie n .IP "Properties accessible through ""\ep{}"" and ""\eP{}""" 4 +.el .IP "Properties accessible through \f(CW\ep{}\fR and \f(CW\eP{}\fR" 4 +.IX Item "Properties accessible through p{} and P{}" +.PD +Single form (\f(CW\*(C`\ep{name}\*(C'\fR) tighter rules:, white space adjacent to a +non-word character, underscores separating digits in numbers, Compound form +(\f(CW\*(C`\ep{name=value}\*(C'\fR or \f(CW\*(C`\ep{name:value}\*(C'\fR) tighter rules:, Stabilized, +Deprecated, Obsolete, Discouraged, \fB*\fR is a wild-card, \fB(\ed+)\fR in the +info column gives the number of Unicode code points matched by this +property, \fBD\fR means this is deprecated, \fBO\fR means this is obsolete, \fBS\fR +means this is stabilized, \fBT\fR means tighter (stricter) name matching +applies, \fBX\fR means use of this form is discouraged, and may not be stable +.RS 4 +.ie n .IP "Legal ""\ep{}"" and ""\eP{}"" constructs that match no characters" 4 +.el .IP "Legal \f(CW\ep{}\fR and \f(CW\eP{}\fR constructs that match no characters" 4 +.IX Item "Legal p{} and P{} constructs that match no characters" +\&\ep{Canonical_Combining_Class=Attached_Below_Left}, +\&\ep{Canonical_Combining_Class=CCC133}, \ep{Grapheme_Cluster_Break=E_Base}, +\&\ep{Grapheme_Cluster_Break=E_Base_GAZ}, +\&\ep{Grapheme_Cluster_Break=E_Modifier}, +\&\ep{Grapheme_Cluster_Break=Glue_After_Zwj}, \ep{Word_Break=E_Base}, +\&\ep{Word_Break=E_Base_GAZ}, \ep{Word_Break=E_Modifier}, +\&\ep{Word_Break=Glue_After_Zwj} +.RE +.RS 4 +.RE +.IP "Properties accessible through Unicode::UCD" 4 +.IX Item "Properties accessible through Unicode::UCD" +.PD 0 +.IP "Properties accessible through other means" 4 +.IX Item "Properties accessible through other means" +.IP "Unicode character properties that are NOT accepted by Perl" 4 +.IX Item "Unicode character properties that are NOT accepted by Perl" +.PD +\&\fIExpands_On_NFC\fR (XO_NFC), \fIExpands_On_NFD\fR (XO_NFD), \fIExpands_On_NFKC\fR +(XO_NFKC), \fIExpands_On_NFKD\fR (XO_NFKD), \fIGrapheme_Link\fR (Gr_Link), +\&\fIJamo_Short_Name\fR (JSN), \fIOther_Alphabetic\fR (OAlpha), +\&\fIOther_Default_Ignorable_Code_Point\fR (ODI), \fIOther_Grapheme_Extend\fR +(OGr_Ext), \fIOther_ID_Continue\fR (OIDC), \fIOther_ID_Start\fR (OIDS), +\&\fIOther_Lowercase\fR (OLower), \fIOther_Math\fR (OMath), \fIOther_Uppercase\fR +(OUpper), \fIScript=Katakana_Or_Hiragana\fR (sc=Hrkt), +\&\fIScript_Extensions=Katakana_Or_Hiragana\fR (scx=Hrkt) +.IP "Other information in the Unicode data base" 4 +.IX Item "Other information in the Unicode data base" +\&\fIauxiliary/GraphemeBreakTest.html\fR, \fIauxiliary/LineBreakTest.html\fR, +\&\fIauxiliary/SentenceBreakTest.html\fR, \fIauxiliary/WordBreakTest.html\fR, +\&\fIBidiCharacterTest.txt\fR, \fIBidiTest.txt\fR, \fICJKRadicals.txt\fR, +\&\fIconfusables.txt\fR, \fIconfusablesSummary.txt\fR, \fIintentional.txt\fR, +\&\fIemoji/ReadMe.txt\fR, \fIReadMe.txt\fR, \fIEmojiSources.txt\fR, +\&\fIextracted/DName.txt\fR, \fIIndex.txt\fR, \fINamedSqProv.txt\fR, +\&\fINamesList.html\fR, \fINamesList.txt\fR, \fINormalizationCorrections.txt\fR, +\&\fINushuSources.txt\fR, \fIStandardizedVariants.html\fR, +\&\fIStandardizedVariants.txt\fR, \fITangutSources.txt\fR, \fIUSourceData.txt\fR, +\&\fIUSourceGlyphs.pdf\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "perlunitut \- Perl Unicode Tutorial" +.IX Subsection "perlunitut - Perl Unicode Tutorial" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Definitions 4 +.IX Item "Definitions" +.IP "Your new toolkit" 4 +.IX Item "Your new toolkit" +.IP "I/O flow (the actual 5 minute tutorial)" 4 +.IX Item "I/O flow (the actual 5 minute tutorial)" +.RE +.RS 4 +.RE +.IP SUMMARY 4 +.IX Item "SUMMARY" +.IP "Q and A (or FAQ)" 4 +.IX Item "Q and A (or FAQ)" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlebcdic \- Considerations for running Perl on EBCDIC platforms" +.IX Subsection "perlebcdic - Considerations for running Perl on EBCDIC platforms" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "COMMON CHARACTER CODE SETS" 4 +.IX Item "COMMON CHARACTER CODE SETS" +.RS 4 +.IP ASCII 4 +.IX Item "ASCII" +.IP "ISO 8859" 4 +.IX Item "ISO 8859" +.IP "Latin 1 (ISO 8859\-1)" 4 +.IX Item "Latin 1 (ISO 8859-1)" +.IP EBCDIC 4 +.IX Item "EBCDIC" +.PD +\&\fB0037\fR, \fB1047\fR, \fBPOSIX-BC\fR +.IP "Unicode code points versus EBCDIC code points" 4 +.IX Item "Unicode code points versus EBCDIC code points" +.PD 0 +.IP "Unicode and UTF" 4 +.IX Item "Unicode and UTF" +.IP "Using Encode" 4 +.IX Item "Using Encode" +.RE +.RS 4 +.RE +.IP "SINGLE OCTET TABLES" 4 +.IX Item "SINGLE OCTET TABLES" +.PD +recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6 +.RS 4 +.IP "Table in hex, sorted in 1047 order" 4 +.IX Item "Table in hex, sorted in 1047 order" +.RE +.RS 4 +.RE +.PD 0 +.IP "IDENTIFYING CHARACTER CODE SETS" 4 +.IX Item "IDENTIFYING CHARACTER CODE SETS" +.IP CONVERSIONS 4 +.IX Item "CONVERSIONS" +.RS 4 +.ie n .IP "utf8::unicode_to_native() and utf8::native_to_unicode()" 4 +.el .IP "\f(CWutf8::unicode_to_native()\fR and \f(CWutf8::native_to_unicode()\fR" 4 +.IX Item "utf8::unicode_to_native() and utf8::native_to_unicode()" +.IP tr/// 4 +.IX Item "tr///" +.IP iconv 4 +.IX Item "iconv" +.IP "C RTL" 4 +.IX Item "C RTL" +.RE +.RS 4 +.RE +.IP "OPERATOR DIFFERENCES" 4 +.IX Item "OPERATOR DIFFERENCES" +.IP "FUNCTION DIFFERENCES" 4 +.IX Item "FUNCTION DIFFERENCES" +.PD +\&\f(CWchr()\fR, \f(CWord()\fR, \f(CWpack()\fR, \f(CWprint()\fR, \f(CWprintf()\fR, \f(CWsort()\fR, +\&\f(CWsprintf()\fR, \f(CWunpack()\fR +.IP "REGULAR EXPRESSION DIFFERENCES" 4 +.IX Item "REGULAR EXPRESSION DIFFERENCES" +.PD 0 +.IP SOCKETS 4 +.IX Item "SOCKETS" +.IP SORTING 4 +.IX Item "SORTING" +.RS 4 +.IP "Ignore ASCII vs. EBCDIC sort differences." 4 +.IX Item "Ignore ASCII vs. EBCDIC sort differences." +.IP "Use a sort helper function" 4 +.IX Item "Use a sort helper function" +.IP "MONO CASE then sort data (for non-digits, non-underscore)" 4 +.IX Item "MONO CASE then sort data (for non-digits, non-underscore)" +.IP "Perform sorting on one type of platform only." 4 +.IX Item "Perform sorting on one type of platform only." +.RE +.RS 4 +.RE +.IP "TRANSFORMATION FORMATS" 4 +.IX Item "TRANSFORMATION FORMATS" +.RS 4 +.IP "URL decoding and encoding" 4 +.IX Item "URL decoding and encoding" +.IP "uu encoding and decoding" 4 +.IX Item "uu encoding and decoding" +.IP "Quoted-Printable encoding and decoding" 4 +.IX Item "Quoted-Printable encoding and decoding" +.IP "Caesarean ciphers" 4 +.IX Item "Caesarean ciphers" +.RE +.RS 4 +.RE +.IP "Hashing order and checksums" 4 +.IX Item "Hashing order and checksums" +.IP "I18N AND L10N" 4 +.IX Item "I18N AND L10N" +.IP "MULTI-OCTET CHARACTER SETS" 4 +.IX Item "MULTI-OCTET CHARACTER SETS" +.IP "OS ISSUES" 4 +.IX Item "OS ISSUES" +.RS 4 +.IP OS/400 4 +.IX Item "OS/400" +.PD +PASE, IFS access +.IP "OS/390, z/OS" 4 +.IX Item "OS/390, z/OS" +\&\f(CW\*(C`sigaction\*(C'\fR, \f(CW\*(C`chcp\*(C'\fR, dataset access, \f(CW\*(C`iconv\*(C'\fR, locales +.IP POSIX-BC? 4 +.IX Item "POSIX-BC?" +.RE +.RS 4 +.RE +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP REFERENCES 4 +.IX Item "REFERENCES" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlsec \- Perl security" +.IX Subsection "perlsec - Perl security" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "SECURITY VULNERABILITY CONTACT INFORMATION" 4 +.IX Item "SECURITY VULNERABILITY CONTACT INFORMATION" +.IP "SECURITY MECHANISMS AND CONCERNS" 4 +.IX Item "SECURITY MECHANISMS AND CONCERNS" +.RS 4 +.IP "Taint mode" 4 +.IX Item "Taint mode" +.IP "Laundering and Detecting Tainted Data" 4 +.IX Item "Laundering and Detecting Tainted Data" +.IP "Switches On the ""#!"" Line" 4 +.IX Item "Switches On the ""#!"" Line" +.ie n .IP "Taint mode and @INC" 4 +.el .IP "Taint mode and \f(CW@INC\fR" 4 +.IX Item "Taint mode and @INC" +.IP "Cleaning Up Your Path" 4 +.IX Item "Cleaning Up Your Path" +.IP "Shebang Race Condition" 4 +.IX Item "Shebang Race Condition" +.IP "Protecting Your Programs" 4 +.IX Item "Protecting Your Programs" +.IP Unicode 4 +.IX Item "Unicode" +.IP "Algorithmic Complexity Attacks" 4 +.IX Item "Algorithmic Complexity Attacks" +.PD +Hash Seed Randomization, Hash Traversal Randomization, Bucket Order +Perturbance, New Default Hash Function, Alternative Hash Functions +.IP "Using Sudo" 4 +.IX Item "Using Sudo" +.RE +.RS 4 +.RE +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlsecpolicy \- Perl security report handling policy" +.IX Subsection "perlsecpolicy - Perl security report handling policy" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "REPORTING SECURITY ISSUES IN PERL" 4 +.IX Item "REPORTING SECURITY ISSUES IN PERL" +.IP "WHAT ARE SECURITY ISSUES" 4 +.IX Item "WHAT ARE SECURITY ISSUES" +.RS 4 +.IP "Software covered by the Perl security team" 4 +.IX Item "Software covered by the Perl security team" +.IP "Bugs that may qualify as security issues in Perl" 4 +.IX Item "Bugs that may qualify as security issues in Perl" +.IP "Bugs that do not qualify as security issues in Perl" 4 +.IX Item "Bugs that do not qualify as security issues in Perl" +.IP "Bugs that require special categorization" 4 +.IX Item "Bugs that require special categorization" +.RE +.RS 4 +.RE +.IP "HOW WE DEAL WITH SECURITY ISSUES" 4 +.IX Item "HOW WE DEAL WITH SECURITY ISSUES" +.RS 4 +.IP "Perl's vulnerability remediation workflow" 4 +.IX Item "Perl's vulnerability remediation workflow" +.IP "Publicly known and zero-day security issues" 4 +.IX Item "Publicly known and zero-day security issues" +.IP "Vulnerability credit and bounties" 4 +.IX Item "Vulnerability credit and bounties" +.RE +.RS 4 +.RE +.PD +.SS "perlmod \- Perl modules (packages and symbol tables)" +.IX Subsection "perlmod - Perl modules (packages and symbol tables)" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Is this the document you were after?" 4 +.IX Item "Is this the document you were after?" +.PD +This doc, perlnewmod, perlmodstyle +.IP Packages 4 +.IX Xref "package namespace variable, global global variable global" +.IX Item "Packages" +.PD 0 +.IP "Symbol Tables" 4 +.IX Xref "symbol table stash %:: %main:: typeglob glob alias" +.IX Item "Symbol Tables" +.IP "BEGIN, UNITCHECK, CHECK, INIT and END" 4 +.IX Xref "BEGIN UNITCHECK CHECK INIT END" +.IX Item "BEGIN, UNITCHECK, CHECK, INIT and END" +.IP "Perl Classes" 4 +.IX Xref "class @ISA" +.IX Item "Perl Classes" +.IP "Perl Modules" 4 +.IX Xref "module" +.IX Item "Perl Modules" +.IP "Making your module threadsafe" 4 +.IX Xref "threadsafe thread safe module, threadsafe module, thread safe CLONE CLONE_SKIP thread threads ithread" +.IX Item "Making your module threadsafe" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlmodlib \- constructing new Perl modules and finding existing ones" +.IX Subsection "perlmodlib - constructing new Perl modules and finding existing ones" +.IP "THE PERL MODULE LIBRARY" 4 +.IX Item "THE PERL MODULE LIBRARY" +.RS 4 +.PD 0 +.IP "Pragmatic Modules" 4 +.IX Item "Pragmatic Modules" +.PD +attributes, autodie, autodie::exception, autodie::exception::system, +autodie::hints, autodie::skip, autouse, base, bigfloat, bigint, bignum, +bigrat, blib, builtin, bytes, charnames, constant, deprecate, diagnostics, +encoding, encoding::warnings, experimental, feature, fields, filetest, if, +integer, less, lib, locale, mro, ok, open, ops, overload, overloading, +parent, re, sigtrap, sort, stable, strict, subs, threads, threads::shared, +utf8, vars, version, vmsish, warnings, warnings::register +.IP "Standard Modules" 4 +.IX Item "Standard Modules" +Amiga::ARexx, Amiga::Exec, AnyDBM_File, App::Cpan, App::Prove, +App::Prove::State, App::Prove::State::Result, +App::Prove::State::Result::Test, Archive::Tar, Archive::Tar::File, +Attribute::Handlers, AutoLoader, AutoSplit, B, B::Concise, B::Deparse, +B::Op_private, B::Showlex, B::Terse, B::Xref, Benchmark, \f(CW\*(C`IO::Socket::IP\*(C'\fR, +\&\f(CW\*(C`Socket\*(C'\fR, CORE, CPAN, CPAN::API::HOWTO, CPAN::Debug, CPAN::Distroprefs, +CPAN::FirstTime, CPAN::HandleConfig, CPAN::Kwalify, CPAN::Meta, +CPAN::Meta::Converter, CPAN::Meta::Feature, CPAN::Meta::History, +CPAN::Meta::History::Meta_1_0, CPAN::Meta::History::Meta_1_1, +CPAN::Meta::History::Meta_1_2, CPAN::Meta::History::Meta_1_3, +CPAN::Meta::History::Meta_1_4, CPAN::Meta::Merge, CPAN::Meta::Prereqs, +CPAN::Meta::Requirements, CPAN::Meta::Spec, CPAN::Meta::Validator, +CPAN::Meta::YAML, CPAN::Nox, CPAN::Plugin, CPAN::Plugin::Specfile, +CPAN::Queue, CPAN::Tarzip, CPAN::Version, Carp, Class::Struct, +Compress::Raw::Bzip2, Compress::Raw::Zlib, Compress::Zlib, Config, +Config::Extensions, Config::Perl::V, Cwd, DB, DBM_Filter, +DBM_Filter::compress, DBM_Filter::encode, DBM_Filter::int32, +DBM_Filter::null, DBM_Filter::utf8, DB_File, Data::Dumper, Devel::PPPort, +Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5, Digest::SHA, +Digest::base, Digest::file, DirHandle, Dumpvalue, DynaLoader, Encode, +Encode::Alias, Encode::Byte, Encode::CJKConstants, Encode::CN, +Encode::CN::HZ, Encode::Config, Encode::EBCDIC, Encode::Encoder, +Encode::Encoding, Encode::GSM0338, Encode::Guess, Encode::JP, +Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR, +Encode::MIME::Header, Encode::MIME::Name, Encode::PerlIO, +Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode, +Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy, +ExtUtils::CBuilder, ExtUtils::CBuilder::Platform::Windows, +ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, +ExtUtils::Constant::Base, ExtUtils::Constant::Utils, +ExtUtils::Constant::XS, ExtUtils::Embed, ExtUtils::Install, +ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM::Utils, +ExtUtils::MM_AIX, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, +ExtUtils::MM_DOS, ExtUtils::MM_Darwin, ExtUtils::MM_MacOS, +ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_OS390, ExtUtils::MM_QNX, +ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_VOS, +ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, +ExtUtils::MakeMaker::Config, ExtUtils::MakeMaker::FAQ, +ExtUtils::MakeMaker::Locale, ExtUtils::MakeMaker::Tutorial, +ExtUtils::Manifest, ExtUtils::Miniperl, ExtUtils::Mkbootstrap, +ExtUtils::Mksymlists, ExtUtils::PL2Bat, ExtUtils::Packlist, +ExtUtils::ParseXS, ExtUtils::ParseXS::Constants, ExtUtils::ParseXS::Eval, +ExtUtils::ParseXS::Utilities, ExtUtils::Typemaps, ExtUtils::Typemaps::Cmd, +ExtUtils::Typemaps::InputMap, ExtUtils::Typemaps::OutputMap, +ExtUtils::Typemaps::Type, ExtUtils::XSSymSet, ExtUtils::testlib, Fatal, +Fcntl, File::Basename, File::Compare, File::Copy, File::DosGlob, +File::Fetch, File::Find, File::Glob, File::GlobMapper, File::Path, +File::Spec, File::Spec::AmigaOS, File::Spec::Cygwin, File::Spec::Epoc, +File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, +File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, +FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File, +Getopt::Long, Getopt::Std, HTTP::Tiny, Hash::Util, Hash::Util::FieldHash, +I18N::Collate, I18N::LangTags, I18N::LangTags::Detect, +I18N::LangTags::List, I18N::Langinfo, IO, IO::Compress::Base, +IO::Compress::Bzip2, IO::Compress::Deflate, IO::Compress::FAQ, +IO::Compress::Gzip, IO::Compress::RawDeflate, IO::Compress::Zip, IO::Dir, +IO::File, IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, +IO::Socket, IO::Socket::INET, IO::Socket::UNIX, IO::Uncompress::AnyInflate, +IO::Uncompress::AnyUncompress, IO::Uncompress::Base, +IO::Uncompress::Bunzip2, IO::Uncompress::Gunzip, IO::Uncompress::Inflate, +IO::Uncompress::RawInflate, IO::Uncompress::Unzip, IO::Zlib, IPC::Cmd, +IPC::Msg, IPC::Open2, IPC::Open3, IPC::Semaphore, IPC::SharedMem, +IPC::SysV, Internals, JSON::PP, JSON::PP::Boolean, List::Util, +List::Util::XS, Locale::Maketext, Locale::Maketext::Cookbook, +Locale::Maketext::Guts, Locale::Maketext::GutsLoader, +Locale::Maketext::Simple, Locale::Maketext::TPJ13, MIME::Base64, +MIME::QuotedPrint, Math::BigFloat, Math::BigInt, Math::BigInt::Calc, +Math::BigInt::FastCalc, Math::BigInt::Lib, Math::BigRat, Math::Complex, +Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire, +Memoize::NDBM_File, Memoize::SDBM_File, Memoize::Storable, +Module::CoreList, Module::CoreList::Utils, Module::Load, +Module::Load::Conditional, Module::Loaded, Module::Metadata, NDBM_File, +NEXT, Net::Cmd, Net::Config, Net::Domain, Net::FTP, Net::FTP::dataconn, +Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, Net::SMTP, Net::Time, +Net::hostent, Net::libnetFAQ, Net::netent, Net::protoent, Net::servent, O, +ODBM_File, Opcode, POSIX, Params::Check, Parse::CPAN::Meta, Perl::OSType, +PerlIO, PerlIO::encoding, PerlIO::mmap, PerlIO::scalar, PerlIO::via, +PerlIO::via::QuotedPrint, Pod::Checker, Pod::Escapes, Pod::Functions, +Pod::Html, Pod::Html::Util, Pod::Man, Pod::ParseLink, Pod::Perldoc, +Pod::Perldoc::BaseTo, Pod::Perldoc::GetOptsOO, Pod::Perldoc::ToANSI, +Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, +Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToTerm, +Pod::Perldoc::ToText, Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::Simple, +Pod::Simple::Checker, Pod::Simple::Debug, Pod::Simple::DumpAsText, +Pod::Simple::DumpAsXML, Pod::Simple::HTML, Pod::Simple::HTMLBatch, +Pod::Simple::JustPod, Pod::Simple::LinkSection, Pod::Simple::Methody, +Pod::Simple::PullParser, Pod::Simple::PullParserEndToken, +Pod::Simple::PullParserStartToken, Pod::Simple::PullParserTextToken, +Pod::Simple::PullParserToken, Pod::Simple::RTF, Pod::Simple::Search, +Pod::Simple::SimpleTree, Pod::Simple::Subclassing, Pod::Simple::Text, +Pod::Simple::TextContent, Pod::Simple::XHTML, Pod::Simple::XMLOutStream, +Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, +Pod::Usage, SDBM_File, Safe, Scalar::Util, Search::Dict, SelectSaver, +SelfLoader, Storable, Sub::Util, Symbol, Sys::Hostname, Sys::Syslog, +Sys::Syslog::Win32, TAP::Base, TAP::Formatter::Base, TAP::Formatter::Color, +TAP::Formatter::Console, TAP::Formatter::Console::ParallelSession, +TAP::Formatter::Console::Session, TAP::Formatter::File, +TAP::Formatter::File::Session, TAP::Formatter::Session, TAP::Harness, +TAP::Harness::Env, TAP::Object, TAP::Parser, TAP::Parser::Aggregator, +TAP::Parser::Grammar, TAP::Parser::Iterator, TAP::Parser::Iterator::Array, +TAP::Parser::Iterator::Process, TAP::Parser::Iterator::Stream, +TAP::Parser::IteratorFactory, TAP::Parser::Multiplexer, +TAP::Parser::Result, TAP::Parser::Result::Bailout, +TAP::Parser::Result::Comment, TAP::Parser::Result::Plan, +TAP::Parser::Result::Pragma, TAP::Parser::Result::Test, +TAP::Parser::Result::Unknown, TAP::Parser::Result::Version, +TAP::Parser::Result::YAML, TAP::Parser::ResultFactory, +TAP::Parser::Scheduler, TAP::Parser::Scheduler::Job, +TAP::Parser::Scheduler::Spinner, TAP::Parser::Source, +TAP::Parser::SourceHandler, TAP::Parser::SourceHandler::Executable, +TAP::Parser::SourceHandler::File, TAP::Parser::SourceHandler::Handle, +TAP::Parser::SourceHandler::Perl, TAP::Parser::SourceHandler::RawTAP, +TAP::Parser::YAMLish::Reader, TAP::Parser::YAMLish::Writer, +Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, Test2, +Test2::API, Test2::API::Breakage, Test2::API::Context, +Test2::API::Instance, Test2::API::InterceptResult, +Test2::API::InterceptResult::Event, Test2::API::InterceptResult::Hub, +Test2::API::InterceptResult::Squasher, Test2::API::Stack, Test2::Event, +Test2::Event::Bail, Test2::Event::Diag, Test2::Event::Encoding, +Test2::Event::Exception, Test2::Event::Fail, Test2::Event::Generic, +Test2::Event::Note, Test2::Event::Ok, Test2::Event::Pass, +Test2::Event::Plan, Test2::Event::Skip, Test2::Event::Subtest, +Test2::Event::TAP::Version, Test2::Event::V2, Test2::Event::Waiting, +Test2::EventFacet, Test2::EventFacet::About, Test2::EventFacet::Amnesty, +Test2::EventFacet::Assert, Test2::EventFacet::Control, +Test2::EventFacet::Error, Test2::EventFacet::Hub, Test2::EventFacet::Info, +Test2::EventFacet::Info::Table, Test2::EventFacet::Meta, +Test2::EventFacet::Parent, Test2::EventFacet::Plan, +Test2::EventFacet::Render, Test2::EventFacet::Trace, Test2::Formatter, +Test2::Formatter::TAP, Test2::Hub, Test2::Hub::Interceptor, +Test2::Hub::Interceptor::Terminator, Test2::Hub::Subtest, Test2::IPC, +Test2::IPC::Driver, Test2::IPC::Driver::Files, Test2::Tools::Tiny, +Test2::Transition, Test2::Util, Test2::Util::ExternalMeta, +Test2::Util::Facets2Legacy, Test2::Util::HashBase, Test2::Util::Trace, +Test::Builder, Test::Builder::Formatter, Test::Builder::IO::Scalar, +Test::Builder::Module, Test::Builder::Tester, Test::Builder::Tester::Color, +Test::Builder::TodoDiag, Test::Harness, Test::Harness::Beyond, Test::More, +Test::Simple, Test::Tester, Test::Tester::Capture, +Test::Tester::CaptureRunner, Test::Tutorial, Test::use::ok, Text::Abbrev, +Text::Balanced, Text::ParseWords, Text::Tabs, Text::Wrap, Thread, +Thread::Queue, Thread::Semaphore, Tie::Array, Tie::File, Tie::Handle, +Tie::Hash, Tie::Hash::NamedCapture, Tie::Memoize, Tie::RefHash, +Tie::Scalar, Tie::StdHandle, Tie::SubstrHash, Time::HiRes, Time::Local, +Time::Piece, Time::Seconds, Time::gmtime, Time::localtime, Time::tm, +UNIVERSAL, Unicode::Collate, Unicode::Collate::CJK::Big5, +Unicode::Collate::CJK::GB2312, Unicode::Collate::CJK::JISX0208, +Unicode::Collate::CJK::Korean, Unicode::Collate::CJK::Pinyin, +Unicode::Collate::CJK::Stroke, Unicode::Collate::CJK::Zhuyin, +Unicode::Collate::Locale, Unicode::Normalize, Unicode::UCD, User::grent, +User::pwent, VMS::DCLsym, VMS::Filespec, VMS::Stdio, Win32, Win32API::File, +Win32CORE, XS::APItest, XS::Typemap, XSLoader, autodie::Scope::Guard, +autodie::Scope::GuardStack, autodie::Util, version::Internals +.IP "Extension Modules" 4 +.IX Item "Extension Modules" +.RE +.RS 4 +.RE +.PD 0 +.IP CPAN 4 +.IX Item "CPAN" +.IP "Modules: Creation, Use, and Abuse" 4 +.IX Item "Modules: Creation, Use, and Abuse" +.RS 4 +.IP "Guidelines for Module Creation" 4 +.IX Item "Guidelines for Module Creation" +.IP "Guidelines for Converting Perl 4 Library Scripts into Modules" 4 +.IX Item "Guidelines for Converting Perl 4 Library Scripts into Modules" +.IP "Guidelines for Reusing Application Code" 4 +.IX Item "Guidelines for Reusing Application Code" +.RE +.RS 4 +.RE +.IP NOTE 4 +.IX Item "NOTE" +.PD +.SS "perlmodstyle \- Perl module style guide" +.IX Subsection "perlmodstyle - Perl module style guide" +.IP INTRODUCTION 4 +.IX Item "INTRODUCTION" +.PD 0 +.IP "QUICK CHECKLIST" 4 +.IX Item "QUICK CHECKLIST" +.RS 4 +.IP "Before you start" 4 +.IX Item "Before you start" +.IP "The API" 4 +.IX Item "The API" +.IP Stability 4 +.IX Item "Stability" +.IP Documentation 4 +.IX Item "Documentation" +.IP "Release considerations" 4 +.IX Item "Release considerations" +.RE +.RS 4 +.RE +.IP "BEFORE YOU START WRITING A MODULE" 4 +.IX Item "BEFORE YOU START WRITING A MODULE" +.RS 4 +.IP "Has it been done before?" 4 +.IX Item "Has it been done before?" +.IP "Do one thing and do it well" 4 +.IX Item "Do one thing and do it well" +.IP "What's in a name?" 4 +.IX Item "What's in a name?" +.IP "Get feedback before publishing" 4 +.IX Item "Get feedback before publishing" +.RE +.RS 4 +.RE +.IP "DESIGNING AND WRITING YOUR MODULE" 4 +.IX Item "DESIGNING AND WRITING YOUR MODULE" +.RS 4 +.IP "To OO or not to OO?" 4 +.IX Item "To OO or not to OO?" +.IP "Designing your API" 4 +.IX Item "Designing your API" +.PD +Write simple routines to do simple things, Separate functionality from +output, Provide sensible shortcuts and defaults, Naming conventions, +Parameter passing +.IP "Strictness and warnings" 4 +.IX Item "Strictness and warnings" +.PD 0 +.IP "Backwards compatibility" 4 +.IX Item "Backwards compatibility" +.IP "Error handling and messages" 4 +.IX Item "Error handling and messages" +.RE +.RS 4 +.RE +.IP "DOCUMENTING YOUR MODULE" 4 +.IX Item "DOCUMENTING YOUR MODULE" +.RS 4 +.IP POD 4 +.IX Item "POD" +.IP "README, INSTALL, release notes, changelogs" 4 +.IX Item "README, INSTALL, release notes, changelogs" +.PD +perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, +perl Build test, perl Build install +.RE +.RS 4 +.RE +.IP "RELEASE CONSIDERATIONS" 4 +.IX Item "RELEASE CONSIDERATIONS" +.RS 4 +.PD 0 +.IP "Version numbering" 4 +.IX Item "Version numbering" +.IP Pre-requisites 4 +.IX Item "Pre-requisites" +.IP Testing 4 +.IX Item "Testing" +.IP Packaging 4 +.IX Item "Packaging" +.IP Licensing 4 +.IX Item "Licensing" +.RE +.RS 4 +.RE +.IP "COMMON PITFALLS" 4 +.IX Item "COMMON PITFALLS" +.RS 4 +.IP "Reinventing the wheel" 4 +.IX Item "Reinventing the wheel" +.IP "Trying to do too much" 4 +.IX Item "Trying to do too much" +.IP "Inappropriate documentation" 4 +.IX Item "Inappropriate documentation" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +perlstyle, perlnewmod, perlpod, podchecker, Packaging Tools, +Testing tools, <https://pause.perl.org/>, Any good book on software +engineering +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "perlmodinstall \- Installing CPAN Modules" +.IX Subsection "perlmodinstall - Installing CPAN Modules" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP PREAMBLE 4 +.IX Item "PREAMBLE" +.PD +\&\fBDECOMPRESS\fR the file, \fBUNPACK\fR the file into a directory, \fBBUILD\fR the +module (sometimes unnecessary), \fBINSTALL\fR the module +.RE +.RS 4 +.RE +.IP PORTABILITY 4 +.IX Item "PORTABILITY" +.PD 0 +.IP HEY 4 +.IX Item "HEY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "perlnewmod \- preparing a new module for distribution" +.IX Subsection "perlnewmod - preparing a new module for distribution" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP Warning 4 +.IX Item "Warning" +.IP "What should I make into a module?" 4 +.IX Item "What should I make into a module?" +.IP "Step-by-step: Preparing the ground" 4 +.IX Item "Step-by-step: Preparing the ground" +.PD +Look around, Check it's new, Discuss the need, Choose a name, Check again +.IP "Step-by-step: Making the module" 4 +.IX Item "Step-by-step: Making the module" +Start with \fImodule-starter\fR or \fIh2xs\fR, Use strict and +warnings, Use Carp, Use Exporter \- wisely!, +Use plain old documentation, Write tests, Write the \fIREADME\fR, +Write \fIChanges\fR +.IP "Step-by-step: Distributing your module" 4 +.IX Item "Step-by-step: Distributing your module" +Get a CPAN user ID, Make the tarball, Upload the tarball, Fix bugs! +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlpragma \- how to write a user pragma" +.IX Subsection "perlpragma - how to write a user pragma" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "A basic example" 4 +.IX Item "A basic example" +.IP "Key naming" 4 +.IX Item "Key naming" +.IP "Implementation details" 4 +.IX Item "Implementation details" +.PD +.SS "perlutil \- utilities packaged with the Perl distribution" +.IX Subsection "perlutil - utilities packaged with the Perl distribution" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "LIST OF UTILITIES" 4 +.IX Item "LIST OF UTILITIES" +.RS 4 +.IP Documentation 4 +.IX Item "Documentation" +.PD +perldoc, pod2man, pod2text, pod2html, pod2usage, +podchecker, splain, \fIroffitall\fR +.IP Converters 4 +.IX Item "Converters" +pl2pm +.IP Administration 4 +.IX Item "Administration" +libnetcfg, perlivp +.IP Development 4 +.IX Item "Development" +perlbug, perlthanks, h2ph, h2xs, enc2xs, xsubpp, +prove, corelist +.IP "General tools" 4 +.IX Item "General tools" +encguess, json_pp, piconv, ptar, ptardiff, ptargrep, +shasum, streamzip, zipdetails +.IP Installation 4 +.IX Item "Installation" +cpan, instmodsh +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "perlfilter \- Source Filters" +.IX Subsection "perlfilter - Source Filters" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONCEPTS 4 +.IX Item "CONCEPTS" +.IP "USING FILTERS" 4 +.IX Item "USING FILTERS" +.IP "WRITING A SOURCE FILTER" 4 +.IX Item "WRITING A SOURCE FILTER" +.IP "WRITING A SOURCE FILTER IN C" 4 +.IX Item "WRITING A SOURCE FILTER IN C" +.PD +\&\fBDecryption Filters\fR +.IP "CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE" 4 +.IX Item "CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE" +.PD 0 +.IP "WRITING A SOURCE FILTER IN PERL" 4 +.IX Item "WRITING A SOURCE FILTER IN PERL" +.IP "USING CONTEXT: THE DEBUG FILTER" 4 +.IX Item "USING CONTEXT: THE DEBUG FILTER" +.IP CONCLUSION 4 +.IX Item "CONCLUSION" +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP "THINGS TO LOOK OUT FOR" 4 +.IX Item "THINGS TO LOOK OUT FOR" +.PD +Some Filters Clobber the \f(CW\*(C`DATA\*(C'\fR Handle +.IP REQUIREMENTS 4 +.IX Item "REQUIREMENTS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP Copyrights 4 +.IX Item "Copyrights" +.PD +.SS "perldtrace \- Perl's support for DTrace" +.IX Subsection "perldtrace - Perl's support for DTrace" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP PROBES 4 +.IX Item "PROBES" +.PD +sub\-entry(SUBNAME, FILE, LINE, PACKAGE), sub\-return(SUBNAME, FILE, LINE, +PACKAGE), phase\-change(NEWPHASE, OLDPHASE), op\-entry(OPNAME), +loading\-file(FILENAME), loaded\-file(FILENAME) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +Most frequently called functions, Trace function calls, Function calls +during interpreter cleanup, System calls at compile time, Perl functions +that execute the most opcodes +.IP REFERENCES 4 +.IX Item "REFERENCES" +DTrace Dynamic Tracing Guide, DTrace: Dynamic Tracing in Oracle Solaris, +Mac OS X and FreeBSD +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +Devel::DTrace::Provider +.IP AUTHORS 4 +.IX Item "AUTHORS" +.SS "perlglossary \- Perl Glossary" +.IX Subsection "perlglossary - Perl Glossary" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP A 4 +.IX Item "A" +.PD +accessor methods, actual arguments, address operator, algorithm, alias, +alphabetic, alternatives, anonymous, application, architecture, argument, +ARGV, arithmetical operator, array, array context, Artistic License, ASCII, +assertion, assignment, assignment operator, associative array, +associativity, asynchronous, atom, atomic operation, attribute, +autogeneration, autoincrement, autoload, autosplit, autovivification, AV, +awk +.IP B 4 +.IX Item "B" +backreference, backtracking, backward compatibility, bareword, base class, +big-endian, binary, binary operator, bind, bit, bit shift, bit string, +bless, block, BLOCK, block buffering, Boolean, Boolean context, breakpoint, +broadcast, BSD, bucket, buffer, built-in, bundle, byte, bytecode +.IP C 4 +.IX Item "C" +C, cache, callback, call by reference, call by value, canonical, capture +variables, capturing, cargo cult, case, casefolding, casemapping, +character, character class, character property, circumfix operator, class, +class method, client, closure, cluster, CODE, code generator, codepoint, +code subpattern, collating sequence, co-maintainer, combining character, +command, command buffering, command-line arguments, command name, comment, +compilation unit, compile, compile phase, compiler, compile time, composer, +concatenation, conditional, connection, construct, constructor, context, +continuation, core dump, CPAN, C preprocessor, cracker, currently selected +output channel, current package, current working directory, CV +.IP D 4 +.IX Item "D" +dangling statement, datagram, data structure, data type, DBM, declaration, +declarator, decrement, default, defined, delimiter, dereference, derived +class, descriptor, destroy, destructor, device, directive, directory, +directory handle, discipline, dispatch, distribution, dual-lived, dweomer, +dwimmer, dynamic scoping +.IP E 4 +.IX Item "E" +eclectic, element, embedding, empty subclass test, encapsulation, endian, +en passant, environment, environment variable, EOF, errno, error, escape +sequence, exception, exception handling, exec, executable file, execute, +execute bit, exit status, exploit, export, expression, extension +.IP F 4 +.IX Item "F" +false, FAQ, fatal error, feeping creaturism, field, FIFO, file, file +descriptor, fileglob, filehandle, filename, filesystem, file test operator, +filter, first-come, flag, floating point, flush, FMTEYEWTK, foldcase, fork, +formal arguments, format, freely available, freely redistributable, +freeware, function, funny character +.IP G 4 +.IX Item "G" +garbage collection, GID, glob, global, global destruction, glue language, +granularity, grapheme, greedy, grep, group, GV +.IP H 4 +.IX Item "H" +hacker, handler, hard reference, hash, hash table, header file, here +document, hexadecimal, home directory, host, hubris, HV +.IP I 4 +.IX Item "I" +identifier, impatience, implementation, import, increment, indexing, +indirect filehandle, indirection, indirect object, indirect object slot, +infix, inheritance, instance, instance data, instance method, instance +variable, integer, interface, interpolation, interpreter, invocant, +invocation, I/O, IO, I/O layer, IPA, IP, IPC, is-a, iteration, iterator, IV +.IP J 4 +.IX Item "J" +JAPH +.IP K 4 +.IX Item "K" +key, keyword +.IP L 4 +.IX Item "L" +label, laziness, leftmost longest, left shift, lexeme, lexer, lexical +analysis, lexical scoping, lexical variable, library, LIFO, line, +linebreak, line buffering, line number, link, LIST, list, list context, +list operator, list value, literal, little-endian, local, logical operator, +lookahead, lookbehind, loop, loop control statement, loop label, lowercase, +lvaluable, lvalue, lvalue modifier +.IP M 4 +.IX Item "M" +magic, magical increment, magical variables, Makefile, man, manpage, +matching, member data, memory, metacharacter, metasymbol, method, method +resolution order, minicpan, minimalism, mode, modifier, module, modulus, +mojibake, monger, mortal, mro, multidimensional array, multiple inheritance +.IP N 4 +.IX Item "N" +named pipe, namespace, NaN, network address, newline, NFS, normalization, +null character, null list, null string, numeric context, numification, NV, +nybble +.IP O 4 +.IX Item "O" +object, octal, offset, one-liner, open source software, operand, operating +system, operator, operator overloading, options, ordinal, overloading, +overriding, owner +.IP P 4 +.IX Item "P" +package, pad, parameter, parent class, parse tree, parsing, patch, PATH, +pathname, pattern, pattern matching, PAUSE, Perl mongers, permission bits, +Pern, pipe, pipeline, platform, pod, pod command, pointer, polymorphism, +port, portable, porter, possessive, POSIX, postfix, pp, pragma, precedence, +prefix, preprocessing, primary maintainer, procedure, process, program, +program generator, progressive matching, property, protocol, prototype, +pseudofunction, pseudohash, pseudoliteral, public domain, pumpkin, +pumpking, PV +.IP Q 4 +.IX Item "Q" +qualified, quantifier +.IP R 4 +.IX Item "R" +race condition, readable, reaping, record, recursion, reference, referent, +regex, regular expression, regular expression modifier, regular file, +relational operator, reserved words, return value, RFC, right shift, role, +root, RTFM, run phase, runtime, runtime pattern, RV, rvalue +.IP S 4 +.IX Item "S" +sandbox, scalar, scalar context, scalar literal, scalar value, scalar +variable, scope, scratchpad, script, script kiddie, sed, semaphore, +separator, serialization, server, service, setgid, setuid, shared memory, +shebang, shell, side effects, sigil, signal, signal handler, single +inheritance, slice, slurp, socket, soft reference, source filter, stack, +standard, standard error, standard input, standard I/O, Standard Library, +standard output, statement, statement modifier, static, static method, +static scoping, static variable, stat structure, status, STDERR, STDIN, +STDIO, STDOUT, stream, string, string context, stringification, struct, +structure, subclass, subpattern, subroutine, subscript, substitution, +substring, superclass, superuser, SV, switch, switch cluster, switch +statement, symbol, symbolic debugger, symbolic link, symbolic reference, +symbol table, synchronous, syntactic sugar, syntax, syntax tree, syscall +.IP T 4 +.IX Item "T" +taint checks, tainted, taint mode, TCP, term, terminator, ternary, text, +thread, tie, titlecase, TMTOWTDI, token, tokener, tokenizing, toolbox +approach, topic, transliterate, trigger, trinary, troff, true, truncating, +type, type casting, typedef, typed lexical, typeglob, typemap +.IP U 4 +.IX Item "U" +UDP, UID, umask, unary operator, Unicode, Unix, uppercase +.IP V 4 +.IX Item "V" +value, variable, variable interpolation, variadic, vector, virtual, void +context, v\-string +.IP W 4 +.IX Item "W" +warning, watch expression, weak reference, whitespace, word, working +directory, wrapper, WYSIWYG +.IP X 4 +.IX Item "X" +XS, XSUB +.IP Y 4 +.IX Item "Y" +yacc +.IP Z 4 +.IX Item "Z" +zero width, zombie +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.SS "perlembed \- how to embed perl in your C program" +.IX Subsection "perlembed - how to embed perl in your C program" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP PREAMBLE 4 +.IX Item "PREAMBLE" +.PD +\&\fBUse C from Perl?\fR, \fBUse a Unix program from Perl?\fR, \fBUse Perl from +Perl?\fR, \fBUse C from C?\fR, \fBUse Perl from C?\fR +.IP ROADMAP 4 +.IX Item "ROADMAP" +.PD 0 +.IP "Compiling your C program" 4 +.IX Item "Compiling your C program" +.IP "Adding a Perl interpreter to your C program" 4 +.IX Item "Adding a Perl interpreter to your C program" +.IP "Calling a Perl subroutine from your C program" 4 +.IX Item "Calling a Perl subroutine from your C program" +.IP "Evaluating a Perl statement from your C program" 4 +.IX Item "Evaluating a Perl statement from your C program" +.IP "Performing Perl pattern matches and substitutions from your C program" 4 +.IX Item "Performing Perl pattern matches and substitutions from your C program" +.IP "Fiddling with the Perl stack from your C program" 4 +.IX Item "Fiddling with the Perl stack from your C program" +.IP "Maintaining a persistent interpreter" 4 +.IX Item "Maintaining a persistent interpreter" +.IP "Execution of END blocks" 4 +.IX Item "Execution of END blocks" +.ie n .IP "$0 assignments" 4 +.el .IP "\f(CW$0\fR assignments" 4 +.IX Item "$0 assignments" +.IP "Maintaining multiple interpreter instances" 4 +.IX Item "Maintaining multiple interpreter instances" +.IP "Using Perl modules, which themselves use C libraries, from your C program" 4 +.IX Item "Using Perl modules, which themselves use C libraries, from your C program" +.IP "Using embedded Perl with POSIX locales" 4 +.IX Item "Using embedded Perl with POSIX locales" +.RE +.RS 4 +.RE +.IP "Hiding Perl_" 4 +.IX Item "Hiding Perl_" +.IP MORAL 4 +.IX Item "MORAL" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "perldebguts \- Guts of Perl debugging" +.IX Subsection "perldebguts - Guts of Perl debugging" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Debugger Internals" 4 +.IX Item "Debugger Internals" +.RS 4 +.IP "Writing Your Own Debugger" 4 +.IX Item "Writing Your Own Debugger" +.RE +.RS 4 +.RE +.IP "Frame Listing Output Examples" 4 +.IX Item "Frame Listing Output Examples" +.IP "Debugging Regular Expressions" 4 +.IX Item "Debugging Regular Expressions" +.RS 4 +.IP "Compile-time Output" 4 +.IX Item "Compile-time Output" +.PD +\&\f(CW\*(C`anchored\*(C'\fR \fISTRING\fR \f(CW\*(C`at\*(C'\fR \fIPOS\fR, \f(CW\*(C`floating\*(C'\fR \fISTRING\fR \f(CW\*(C`at\*(C'\fR +\&\fIPOS1..POS2\fR, \f(CW\*(C`matching floating/anchored\*(C'\fR, \f(CW\*(C`minlen\*(C'\fR, \f(CW\*(C`stclass\*(C'\fR +\&\fITYPE\fR, \f(CW\*(C`noscan\*(C'\fR, \f(CW\*(C`isall\*(C'\fR, \f(CW\*(C`GPOS\*(C'\fR, \f(CW\*(C`plus\*(C'\fR, \f(CW\*(C`implicit\*(C'\fR, \f(CW\*(C`with eval\*(C'\fR, +\&\f(CWanchored(TYPE)\fR +.IP "Types of Nodes" 4 +.IX Item "Types of Nodes" +.PD 0 +.IP "Run-time Output" 4 +.IX Item "Run-time Output" +.RE +.RS 4 +.RE +.IP "Debugging Perl Memory Usage" 4 +.IX Item "Debugging Perl Memory Usage" +.RS 4 +.ie n .IP "Using $ENV{PERL_DEBUG_MSTATS}" 4 +.el .IP "Using \f(CW$ENV{PERL_DEBUG_MSTATS}\fR" 4 +.IX Item "Using $ENV{PERL_DEBUG_MSTATS}" +.PD +\&\f(CW\*(C`buckets SMALLEST(APPROX)..GREATEST(APPROX)\*(C'\fR, Free/Used, \f(CW\*(C`Total sbrk(): +SBRKed/SBRKs:CONTINUOUS\*(C'\fR, \f(CW\*(C`pad: 0\*(C'\fR, \f(CW\*(C`heads: 2192\*(C'\fR, \f(CW\*(C`chain: 0\*(C'\fR, \f(CWtail: +6144\fR +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "perlxstut \- Tutorial for writing XSUBs" +.IX Subsection "perlxstut - Tutorial for writing XSUBs" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SPECIAL NOTES" 4 +.IX Item "SPECIAL NOTES" +.RS 4 +.IP make 4 +.IX Item "make" +.IP "Version caveat" 4 +.IX Item "Version caveat" +.IP "Dynamic Loading versus Static Loading" 4 +.IX Item "Dynamic Loading versus Static Loading" +.IP "Threads and PERL_NO_GET_CONTEXT" 4 +.IX Item "Threads and PERL_NO_GET_CONTEXT" +.RE +.RS 4 +.RE +.IP TUTORIAL 4 +.IX Item "TUTORIAL" +.RS 4 +.IP "EXAMPLE 1" 4 +.IX Item "EXAMPLE 1" +.IP "EXAMPLE 2" 4 +.IX Item "EXAMPLE 2" +.IP "What has gone on?" 4 +.IX Item "What has gone on?" +.IP "Writing good test scripts" 4 +.IX Item "Writing good test scripts" +.IP "EXAMPLE 3" 4 +.IX Item "EXAMPLE 3" +.IP "What's new here?" 4 +.IX Item "What's new here?" +.IP "Input and Output Parameters" 4 +.IX Item "Input and Output Parameters" +.IP "The XSUBPP Program" 4 +.IX Item "The XSUBPP Program" +.IP "The TYPEMAP file" 4 +.IX Item "The TYPEMAP file" +.IP "Warning about Output Arguments" 4 +.IX Item "Warning about Output Arguments" +.IP "EXAMPLE 4" 4 +.IX Item "EXAMPLE 4" +.IP "What has happened here?" 4 +.IX Item "What has happened here?" +.IP "Anatomy of .xs file" 4 +.IX Item "Anatomy of .xs file" +.IP "Getting the fat out of XSUBs" 4 +.IX Item "Getting the fat out of XSUBs" +.IP "More about XSUB arguments" 4 +.IX Item "More about XSUB arguments" +.IP "The Argument Stack" 4 +.IX Item "The Argument Stack" +.IP "Extending your Extension" 4 +.IX Item "Extending your Extension" +.IP "Documenting your Extension" 4 +.IX Item "Documenting your Extension" +.IP "Installing your Extension" 4 +.IX Item "Installing your Extension" +.IP "EXAMPLE 5" 4 +.IX Item "EXAMPLE 5" +.IP "New Things in this Example" 4 +.IX Item "New Things in this Example" +.IP "EXAMPLE 6" 4 +.IX Item "EXAMPLE 6" +.IP "New Things in this Example" 4 +.IX Item "New Things in this Example" +.IP "EXAMPLE 7 (Coming Soon)" 4 +.IX Item "EXAMPLE 7 (Coming Soon)" +.IP "EXAMPLE 8 (Coming Soon)" 4 +.IX Item "EXAMPLE 8 (Coming Soon)" +.IP "EXAMPLE 9 Passing open files to XSes" 4 +.IX Item "EXAMPLE 9 Passing open files to XSes" +.IP "Troubleshooting these Examples" 4 +.IX Item "Troubleshooting these Examples" +.RE +.RS 4 +.RE +.IP "See also" 4 +.IX Item "See also" +.IP Author 4 +.IX Item "Author" +.RS 4 +.IP "Last Changed" 4 +.IX Item "Last Changed" +.RE +.RS 4 +.RE +.PD +.SS "perlxs \- XS language reference manual" +.IX Subsection "perlxs - XS language reference manual" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP Introduction 4 +.IX Item "Introduction" +.IP "On The Road" 4 +.IX Item "On The Road" +.IP "The Anatomy of an XSUB" 4 +.IX Item "The Anatomy of an XSUB" +.IP "The Argument Stack" 4 +.IX Item "The Argument Stack" +.IP "The RETVAL Variable" 4 +.IX Item "The RETVAL Variable" +.IP "Returning SVs, AVs and HVs through RETVAL" 4 +.IX Item "Returning SVs, AVs and HVs through RETVAL" +.IP "The MODULE Keyword" 4 +.IX Item "The MODULE Keyword" +.IP "The PACKAGE Keyword" 4 +.IX Item "The PACKAGE Keyword" +.IP "The PREFIX Keyword" 4 +.IX Item "The PREFIX Keyword" +.IP "The OUTPUT: Keyword" 4 +.IX Item "The OUTPUT: Keyword" +.IP "The NO_OUTPUT Keyword" 4 +.IX Item "The NO_OUTPUT Keyword" +.IP "The CODE: Keyword" 4 +.IX Item "The CODE: Keyword" +.IP "The INIT: Keyword" 4 +.IX Item "The INIT: Keyword" +.IP "The NO_INIT Keyword" 4 +.IX Item "The NO_INIT Keyword" +.IP "The TYPEMAP: Keyword" 4 +.IX Item "The TYPEMAP: Keyword" +.IP "Initializing Function Parameters" 4 +.IX Item "Initializing Function Parameters" +.IP "Default Parameter Values" 4 +.IX Item "Default Parameter Values" +.IP "The PREINIT: Keyword" 4 +.IX Item "The PREINIT: Keyword" +.IP "The SCOPE: Keyword" 4 +.IX Item "The SCOPE: Keyword" +.IP "The INPUT: Keyword" 4 +.IX Item "The INPUT: Keyword" +.IP "The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords" 4 +.IX Item "The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords" +.ie n .IP "The length(NAME) Keyword" 4 +.el .IP "The \f(CWlength(NAME)\fR Keyword" 4 +.IX Item "The length(NAME) Keyword" +.IP "Variable-length Parameter Lists" 4 +.IX Item "Variable-length Parameter Lists" +.IP "The C_ARGS: Keyword" 4 +.IX Item "The C_ARGS: Keyword" +.IP "The PPCODE: Keyword" 4 +.IX Item "The PPCODE: Keyword" +.IP "Returning Undef And Empty Lists" 4 +.IX Item "Returning Undef And Empty Lists" +.IP "The REQUIRE: Keyword" 4 +.IX Item "The REQUIRE: Keyword" +.IP "The CLEANUP: Keyword" 4 +.IX Item "The CLEANUP: Keyword" +.IP "The POSTCALL: Keyword" 4 +.IX Item "The POSTCALL: Keyword" +.IP "The BOOT: Keyword" 4 +.IX Item "The BOOT: Keyword" +.IP "The VERSIONCHECK: Keyword" 4 +.IX Item "The VERSIONCHECK: Keyword" +.IP "The PROTOTYPES: Keyword" 4 +.IX Item "The PROTOTYPES: Keyword" +.IP "The PROTOTYPE: Keyword" 4 +.IX Item "The PROTOTYPE: Keyword" +.IP "The ALIAS: Keyword" 4 +.IX Item "The ALIAS: Keyword" +.IP "The OVERLOAD: Keyword" 4 +.IX Item "The OVERLOAD: Keyword" +.IP "The FALLBACK: Keyword" 4 +.IX Item "The FALLBACK: Keyword" +.IP "The INTERFACE: Keyword" 4 +.IX Item "The INTERFACE: Keyword" +.IP "The INTERFACE_MACRO: Keyword" 4 +.IX Item "The INTERFACE_MACRO: Keyword" +.IP "The INCLUDE: Keyword" 4 +.IX Item "The INCLUDE: Keyword" +.IP "The INCLUDE_COMMAND: Keyword" 4 +.IX Item "The INCLUDE_COMMAND: Keyword" +.IP "The CASE: Keyword" 4 +.IX Item "The CASE: Keyword" +.IP "The EXPORT_XSUB_SYMBOLS: Keyword" 4 +.IX Item "The EXPORT_XSUB_SYMBOLS: Keyword" +.IP "The & Unary Operator" 4 +.IX Item "The & Unary Operator" +.IP "Inserting POD, Comments and C Preprocessor Directives" 4 +.IX Item "Inserting POD, Comments and C Preprocessor Directives" +.IP "Using XS With C++" 4 +.IX Item "Using XS With C++" +.IP "Interface Strategy" 4 +.IX Item "Interface Strategy" +.IP "Perl Objects And C Structures" 4 +.IX Item "Perl Objects And C Structures" +.IP "Safely Storing Static Data in XS" 4 +.IX Item "Safely Storing Static Data in XS" +.PD +MY_CXT_KEY, typedef my_cxt_t, START_MY_CXT, MY_CXT_INIT, dMY_CXT, MY_CXT, +aMY_CXT/pMY_CXT, MY_CXT_CLONE, MY_CXT_INIT_INTERP(my_perl), +dMY_CXT_INTERP(my_perl) +.IP "Thread-aware system interfaces" 4 +.IX Item "Thread-aware system interfaces" +.RE +.RS 4 +.RE +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +Non-locale-aware XS code, Locale-aware XS code +.IP "XS VERSION" 4 +.IX Item "XS VERSION" +.PD 0 +.IP "AUTHOR DIAGNOSTICS" 4 +.IX Item "AUTHOR DIAGNOSTICS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlxstypemap \- Perl XS C/Perl type mapping" +.IX Subsection "perlxstypemap - Perl XS C/Perl type mapping" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Anatomy of a typemap" 4 +.IX Item "Anatomy of a typemap" +.IP "The Role of the typemap File in Your Distribution" 4 +.IX Item "The Role of the typemap File in Your Distribution" +.IP "Sharing typemaps Between CPAN Distributions" 4 +.IX Item "Sharing typemaps Between CPAN Distributions" +.IP "Writing typemap Entries" 4 +.IX Item "Writing typemap Entries" +.IP "Full Listing of Core Typemaps" 4 +.IX Item "Full Listing of Core Typemaps" +.PD +T_SV, T_SVREF, T_SVREF_FIXED, T_AVREF, T_AVREF_REFCOUNT_FIXED, T_HVREF, +T_HVREF_REFCOUNT_FIXED, T_CVREF, T_CVREF_REFCOUNT_FIXED, T_SYSRET, T_UV, +T_IV, T_INT, T_ENUM, T_BOOL, T_U_INT, T_SHORT, T_U_SHORT, T_LONG, T_U_LONG, +T_CHAR, T_U_CHAR, T_FLOAT, T_NV, T_DOUBLE, T_PV, T_PTR, T_PTRREF, T_PTROBJ, +T_REF_IV_REF, T_REF_IV_PTR, T_PTRDESC, T_REFREF, T_REFOBJ, T_OPAQUEPTR, +T_OPAQUE, Implicit array, T_PACKED, T_PACKEDARRAY, T_DATAUNIT, T_CALLBACK, +T_ARRAY, T_STDIO, T_INOUT, T_IN, T_OUT +.RE +.RS 4 +.RE +.SS "perlclib \- Internal replacements for standard C library functions" +.IX Subsection "perlclib - Internal replacements for standard C library functions" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP Conventions 4 +.IX Item "Conventions" +.PD +\&\f(CW\*(C`t\*(C'\fR, \f(CW\*(C`p\*(C'\fR, \f(CW\*(C`n\*(C'\fR, \f(CW\*(C`s\*(C'\fR +.IP "File Operations" 4 +.IX Item "File Operations" +.PD 0 +.IP "File Input and Output" 4 +.IX Item "File Input and Output" +.IP "File Positioning" 4 +.IX Item "File Positioning" +.IP "Memory Management and String Handling" 4 +.IX Item "Memory Management and String Handling" +.IP "Character Class Tests" 4 +.IX Item "Character Class Tests" +.IP "\fIstdlib.h\fR functions" 4 +.IX Item "stdlib.h functions" +.IP "Miscellaneous functions" 4 +.IX Item "Miscellaneous functions" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlguts \- Introduction to the Perl API" +.IX Subsection "perlguts - Introduction to the Perl API" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Variables 4 +.IX Item "Variables" +.RS 4 +.IP Datatypes 4 +.IX Item "Datatypes" +.IP "What is an ""IV""?" 4 +.IX Item "What is an ""IV""?" +.IP "Working with SVs" 4 +.IX Item "Working with SVs" +.PD +\&\f(CWSvIV(SV*)\fR (\f(CW\*(C`IV\*(C'\fR) and \f(CWSvUV(SV*)\fR (\f(CW\*(C`UV\*(C'\fR), \f(CWSvNV(SV*)\fR (\f(CW\*(C`double\*(C'\fR), +Strings are a bit complicated:, Byte string: \f(CW\*(C`SvPVbyte(SV*, STRLEN len)\*(C'\fR +or \f(CWSvPVbyte_nolen(SV*)\fR, UTF\-8 string: \f(CW\*(C`SvPVutf8(SV*, STRLEN len)\*(C'\fR or +\&\f(CWSvPVutf8_nolen(SV*)\fR, You can also use \f(CW\*(C`SvPV(SV*, STRLEN len)\*(C'\fR or +\&\f(CWSvPV_nolen(SV*)\fR to fetch the SV's raw internal buffer. This is tricky, +though; if your Perl string is \f(CW"\exff\exff"\fR, then depending on the SV's +internal encoding you might get back a 2\-byte \fBOR\fR a 4\-byte \f(CW\*(C`char*\*(C'\fR. +Moreover, if it's the 4\-byte string, that could come from either Perl +\&\f(CW"\exff\exff"\fR stored UTF\-8 encoded, or Perl \f(CW"\exc3\exbf\exc3\exbf"\fR stored as +raw octets. To differentiate between these you \fBMUST\fR look up the SV's +UTF8 bit (cf. \f(CW\*(C`SvUTF8\*(C'\fR) to know whether the source Perl string is 2 +characters (\f(CW\*(C`SvUTF8\*(C'\fR would be on) or 4 characters (\f(CW\*(C`SvUTF8\*(C'\fR would be off) +.IP Offsets 4 +.IX Item "Offsets" +.PD 0 +.IP "What's Really Stored in an SV?" 4 +.IX Item "What's Really Stored in an SV?" +.IP "Working with AVs" 4 +.IX Item "Working with AVs" +.PD +\&\f(CW\*(C`av_store_simple\*(C'\fR, \f(CW\*(C`av_fetch_simple\*(C'\fR, \f(CW\*(C`av_push_simple\*(C'\fR, are not magical, +are not readonly, are "real" (refcounted) AVs, have an av_top_index value > +\&\-2 +.IP "Working with HVs" 4 +.IX Item "Working with HVs" +.PD 0 +.IP "Hash API Extensions" 4 +.IX Item "Hash API Extensions" +.IP "AVs, HVs and undefined values" 4 +.IX Item "AVs, HVs and undefined values" +.IP References 4 +.IX Item "References" +.IP "Blessed References and Class Objects" 4 +.IX Item "Blessed References and Class Objects" +.IP "Creating New Variables" 4 +.IX Item "Creating New Variables" +.PD +GV_ADDMULTI, GV_ADDWARN +.IP "Reference Counts and Mortality" 4 +.IX Item "Reference Counts and Mortality" +.PD 0 +.IP "Stashes and Globs" 4 +.IX Item "Stashes and Globs" +.IP "I/O Handles" 4 +.IX Item "I/O Handles" +.IP "Double-Typed SVs" 4 +.IX Item "Double-Typed SVs" +.IP "Read-Only Values" 4 +.IX Item "Read-Only Values" +.IP "Copy on Write" 4 +.IX Item "Copy on Write" +.IP "Magic Variables" 4 +.IX Item "Magic Variables" +.IP "Assigning Magic" 4 +.IX Item "Assigning Magic" +.IP "Magic Virtual Tables" 4 +.IX Item "Magic Virtual Tables" +.IP "Finding Magic" 4 +.IX Item "Finding Magic" +.IP "Understanding the Magic of Tied Hashes and Arrays" 4 +.IX Item "Understanding the Magic of Tied Hashes and Arrays" +.IP "Localizing changes" 4 +.IX Item "Localizing changes" +.PD +\&\f(CW\*(C`SAVEINT(int i)\*(C'\fR, \f(CW\*(C`SAVEIV(IV i)\*(C'\fR, \f(CW\*(C`SAVEI32(I32 i)\*(C'\fR, \f(CW\*(C`SAVELONG(long i)\*(C'\fR, +\&\f(CW\*(C`SAVEI8(I8 i)\*(C'\fR, \f(CW\*(C`SAVEI16(I16 i)\*(C'\fR, \f(CW\*(C`SAVEBOOL(int i)\*(C'\fR, \f(CW\*(C`SAVESTRLEN(STRLEN +i)\*(C'\fR, \f(CWSAVESPTR(s)\fR, \f(CWSAVEPPTR(p)\fR, \f(CW\*(C`SAVERCPV(char **ppv)\*(C'\fR, +\&\f(CW\*(C`SAVEGENERICSV(SV **psv)\*(C'\fR, \f(CW\*(C`SAVEFREESV(SV *sv)\*(C'\fR, \f(CW\*(C`SAVEMORTALIZESV(SV +*sv)\*(C'\fR, \f(CW\*(C`SAVEFREEOP(OP *op)\*(C'\fR, \f(CWSAVEFREEPV(p)\fR, \f(CW\*(C`SAVEFREERCPV(char *pv)\*(C'\fR, +\&\f(CW\*(C`SAVECLEARSV(SV *sv)\*(C'\fR, \f(CW\*(C`SAVEDELETE(HV *hv, char *key, I32 length)\*(C'\fR, +\&\f(CW\*(C`SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)\*(C'\fR, +\&\f(CW\*(C`SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)\*(C'\fR, \f(CW\*(C`MORTALSVFUNC_X(SVFUNC_t +f, SV *sv)\*(C'\fR, \f(CW\*(C`MORTALDESTRUCTOR_SV(SV *coderef, SV *args)\*(C'\fR, +\&\f(CWSAVESTACK_POS()\fR, \f(CW\*(C`SV* save_scalar(GV *gv)\*(C'\fR, \f(CW\*(C`AV* save_ary(GV *gv)\*(C'\fR, +\&\f(CW\*(C`HV* save_hash(GV *gv)\*(C'\fR, \f(CW\*(C`void save_item(SV *item)\*(C'\fR, \f(CW\*(C`SV* save_svref(SV +**sptr)\*(C'\fR, \f(CW\*(C`void save_aptr(AV **aptr)\*(C'\fR, \f(CW\*(C`void save_hptr(HV **hptr)\*(C'\fR +.RE +.RS 4 +.RE +.IP Subroutines 4 +.IX Item "Subroutines" +.RS 4 +.PD 0 +.IP "XSUBs and the Argument Stack" 4 +.IX Item "XSUBs and the Argument Stack" +.IP "Autoloading with XSUBs" 4 +.IX Item "Autoloading with XSUBs" +.IP "Calling Perl Routines from within C Programs" 4 +.IX Item "Calling Perl Routines from within C Programs" +.IP "Putting a C value on Perl stack" 4 +.IX Item "Putting a C value on Perl stack" +.IP Scratchpads 4 +.IX Item "Scratchpads" +.IP "Scratchpads and recursion" 4 +.IX Item "Scratchpads and recursion" +.RE +.RS 4 +.RE +.IP "Memory Allocation" 4 +.IX Item "Memory Allocation" +.RS 4 +.IP Allocation 4 +.IX Item "Allocation" +.IP Reallocation 4 +.IX Item "Reallocation" +.IP Moving 4 +.IX Item "Moving" +.RE +.RS 4 +.RE +.IP PerlIO 4 +.IX Item "PerlIO" +.IP "Compiled code" 4 +.IX Item "Compiled code" +.RS 4 +.IP "Code tree" 4 +.IX Item "Code tree" +.IP "Examining the tree" 4 +.IX Item "Examining the tree" +.IP "Compile pass 1: check routines" 4 +.IX Item "Compile pass 1: check routines" +.IP "Compile pass 1a: constant folding" 4 +.IX Item "Compile pass 1a: constant folding" +.IP "Compile pass 2: context propagation" 4 +.IX Item "Compile pass 2: context propagation" +.IP "Compile pass 3: peephole optimization" 4 +.IX Item "Compile pass 3: peephole optimization" +.IP "Pluggable runops" 4 +.IX Item "Pluggable runops" +.IP "Compile-time scope hooks" 4 +.IX Item "Compile-time scope hooks" +.PD +\&\f(CW\*(C`void bhk_start(pTHX_ int full)\*(C'\fR, \f(CW\*(C`void bhk_pre_end(pTHX_ OP **o)\*(C'\fR, +\&\f(CW\*(C`void bhk_post_end(pTHX_ OP **o)\*(C'\fR, \f(CW\*(C`void bhk_eval(pTHX_ OP *const o)\*(C'\fR +.RE +.RS 4 +.RE +.ie n .IP "Examining internal data structures with the ""dump"" functions" 4 +.el .IP "Examining internal data structures with the \f(CWdump\fR functions" 4 +.IX Item "Examining internal data structures with the dump functions" +.PD 0 +.IP "How multiple interpreters and concurrency are supported" 4 +.IX Item "How multiple interpreters and concurrency are supported" +.RS 4 +.IP "Background and MULTIPLICITY" 4 +.IX Item "Background and MULTIPLICITY" +.IP "So what happened to dTHR?" 4 +.IX Item "So what happened to dTHR?" +.IP "How do I use all this in extensions?" 4 +.IX Item "How do I use all this in extensions?" +.IP "Should I do anything special if I call perl from multiple threads?" 4 +.IX Item "Should I do anything special if I call perl from multiple threads?" +.IP "Future Plans and PERL_IMPLICIT_SYS" 4 +.IX Item "Future Plans and PERL_IMPLICIT_SYS" +.RE +.RS 4 +.RE +.IP "Internal Functions" 4 +.IX Item "Internal Functions" +.RS 4 +.IP "Formatted Printing of IVs, UVs, and NVs" 4 +.IX Item "Formatted Printing of IVs, UVs, and NVs" +.IP "Formatted Printing of SVs" 4 +.IX Item "Formatted Printing of SVs" +.IP "Formatted Printing of Strings" 4 +.IX Item "Formatted Printing of Strings" +.RE +.RS 4 +.RE +.ie n .IP "Formatted Printing of ""Size_t"" and ""SSize_t""" 4 +.el .IP "Formatted Printing of \f(CWSize_t\fR and \f(CWSSize_t\fR" 4 +.IX Item "Formatted Printing of Size_t and SSize_t" +.ie n .IP "Formatted Printing of ""Ptrdiff_t"", ""intmax_t"", ""short"" and other special sizes" 4 +.el .IP "Formatted Printing of \f(CWPtrdiff_t\fR, \f(CWintmax_t\fR, \f(CWshort\fR and other special sizes" 4 +.IX Item "Formatted Printing of Ptrdiff_t, intmax_t, short and other special sizes" +.IP "Pointer-To-Integer and Integer-To-Pointer" 4 +.IX Item "Pointer-To-Integer and Integer-To-Pointer" +.IP "Exception Handling" 4 +.IX Item "Exception Handling" +.IP "Source Documentation" 4 +.IX Item "Source Documentation" +.IP "Backwards compatibility" 4 +.IX Item "Backwards compatibility" +.IP "Unicode Support" 4 +.IX Item "Unicode Support" +.RS 4 +.IP "What \fBis\fR Unicode, anyway?" 4 +.IX Item "What is Unicode, anyway?" +.IP "How can I recognise a UTF\-8 string?" 4 +.IX Item "How can I recognise a UTF-8 string?" +.IP "How does UTF\-8 represent Unicode characters?" 4 +.IX Item "How does UTF-8 represent Unicode characters?" +.IP "How does Perl store UTF\-8 strings?" 4 +.IX Item "How does Perl store UTF-8 strings?" +.IP "How do I pass a Perl string to a C library?" 4 +.IX Item "How do I pass a Perl string to a C library?" +.PD +bytes: 0x64 0x78 0x8c, UTF\-8: 0x64 0x78 0xc2 0x8c +.IP "How do I convert a string to UTF\-8?" 4 +.IX Item "How do I convert a string to UTF-8?" +.PD 0 +.IP "How do I compare strings?" 4 +.IX Item "How do I compare strings?" +.IP "Is there anything else I need to know?" 4 +.IX Item "Is there anything else I need to know?" +.RE +.RS 4 +.RE +.IP "Custom Operators" 4 +.IX Item "Custom Operators" +.PD +xop_name, xop_desc, xop_class, OA_BASEOP, OA_UNOP, OA_BINOP, OA_LOGOP, +OA_LISTOP, OA_PMOP, OA_SVOP, OA_PADOP, OA_PVOP_OR_SVOP, OA_LOOP, OA_COP, +xop_peep +.IP Stacks 4 +.IX Item "Stacks" +.RS 4 +.PD 0 +.IP "Value Stack" 4 +.IX Item "Value Stack" +.IP "Mark Stack" 4 +.IX Item "Mark Stack" +.IP "Temporaries Stack" 4 +.IX Item "Temporaries Stack" +.IP "Save Stack" 4 +.IX Item "Save Stack" +.IP "Scope Stack" 4 +.IX Item "Scope Stack" +.RE +.RS 4 +.RE +.IP "Dynamic Scope and the Context Stack" 4 +.IX Item "Dynamic Scope and the Context Stack" +.RS 4 +.IP "Introduction to the context stack" 4 +.IX Item "Introduction to the context stack" +.IP "Pushing contexts" 4 +.IX Item "Pushing contexts" +.IP "Popping contexts" 4 +.IX Item "Popping contexts" +.IP "Redoing contexts" 4 +.IX Item "Redoing contexts" +.RE +.RS 4 +.RE +.IP "Slab-based operator allocation" 4 +.IX Item "Slab-based operator allocation" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlcall \- Perl calling conventions from C" +.IX Subsection "perlcall - Perl calling conventions from C" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +An Error Handler, An Event-Driven Program +.IP "THE CALL_ FUNCTIONS" 4 +.IX Item "THE CALL_ FUNCTIONS" +call_sv, call_pv, call_method, call_argv +.IP "FLAG VALUES" 4 +.IX Item "FLAG VALUES" +.RS 4 +.PD 0 +.IP G_VOID 4 +.IX Item "G_VOID" +.IP G_SCALAR 4 +.IX Item "G_SCALAR" +.IP G_LIST 4 +.IX Item "G_LIST" +.IP G_DISCARD 4 +.IX Item "G_DISCARD" +.IP G_NOARGS 4 +.IX Item "G_NOARGS" +.IP G_EVAL 4 +.IX Item "G_EVAL" +.IP G_KEEPERR 4 +.IX Item "G_KEEPERR" +.IP "Determining the Context" 4 +.IX Item "Determining the Context" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "No Parameters, Nothing Returned" 4 +.IX Item "No Parameters, Nothing Returned" +.IP "Passing Parameters" 4 +.IX Item "Passing Parameters" +.IP "Returning a Scalar" 4 +.IX Item "Returning a Scalar" +.IP "Returning a List of Values" 4 +.IX Item "Returning a List of Values" +.IP "Returning a List in Scalar Context" 4 +.IX Item "Returning a List in Scalar Context" +.IP "Returning Data from Perl via the Parameter List" 4 +.IX Item "Returning Data from Perl via the Parameter List" +.IP "Using G_EVAL" 4 +.IX Item "Using G_EVAL" +.IP "Using G_KEEPERR" 4 +.IX Item "Using G_KEEPERR" +.IP "Using call_sv" 4 +.IX Item "Using call_sv" +.IP "Using call_argv" 4 +.IX Item "Using call_argv" +.IP "Using call_method" 4 +.IX Item "Using call_method" +.IP "Using GIMME_V" 4 +.IX Item "Using GIMME_V" +.IP "Using Perl to Dispose of Temporaries" 4 +.IX Item "Using Perl to Dispose of Temporaries" +.IP "Strategies for Storing Callback Context Information" 4 +.IX Item "Strategies for Storing Callback Context Information" +.PD +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 +.IP "Alternate Stack Manipulation" 4 +.IX Item "Alternate Stack Manipulation" +.PD 0 +.IP "Creating and Calling an Anonymous Subroutine in C" 4 +.IX Item "Creating and Calling an Anonymous Subroutine in C" +.RE +.RS 4 +.RE +.IP "LIGHTWEIGHT CALLBACKS" 4 +.IX Item "LIGHTWEIGHT CALLBACKS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP DATE 4 +.IX Item "DATE" +.PD +.SS "perlmroapi \- Perl method resolution plugin interface" +.IX Subsection "perlmroapi - Perl method resolution plugin interface" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +resolve, name, length, kflags, hash +.IP Callbacks 4 +.IX Item "Callbacks" +.PD 0 +.IP Caching 4 +.IX Item "Caching" +.IP Examples 4 +.IX Item "Examples" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "perlreapi \- Perl regular expression plugin interface" +.IX Subsection "perlreapi - Perl regular expression plugin interface" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Callbacks 4 +.IX Item "Callbacks" +.RS 4 +.IP comp 4 +.IX Item "comp" +.PD +\&\f(CW\*(C`/m\*(C'\fR \- RXf_PMf_MULTILINE, \f(CW\*(C`/s\*(C'\fR \- RXf_PMf_SINGLELINE, \f(CW\*(C`/i\*(C'\fR \- +RXf_PMf_FOLD, \f(CW\*(C`/x\*(C'\fR \- RXf_PMf_EXTENDED, \f(CW\*(C`/p\*(C'\fR \- RXf_PMf_KEEPCOPY, Character +set, RXf_SPLIT, RXf_SKIPWHITE, RXf_START_ONLY, RXf_WHITE, RXf_NULL, +RXf_NO_INPLACE_SUBST +.IP exec 4 +.IX Item "exec" +rx, sv, strbeg, strend, stringarg, minend, data, flags +.IP intuit 4 +.IX Item "intuit" +.PD 0 +.IP checkstr 4 +.IX Item "checkstr" +.IP free 4 +.IX Item "free" +.IP "Numbered capture callbacks" 4 +.IX Item "Numbered capture callbacks" +.IP "Named capture callbacks" 4 +.IX Item "Named capture callbacks" +.IP qr_package 4 +.IX Item "qr_package" +.IP dupe 4 +.IX Item "dupe" +.IP op_comp 4 +.IX Item "op_comp" +.RE +.RS 4 +.RE +.IP "The REGEXP structure" 4 +.IX Item "The REGEXP structure" +.RS 4 +.ie n .IP """engine""" 4 +.el .IP \f(CWengine\fR 4 +.IX Item "engine" +.ie n .IP """mother_re""" 4 +.el .IP \f(CWmother_re\fR 4 +.IX Item "mother_re" +.ie n .IP """extflags""" 4 +.el .IP \f(CWextflags\fR 4 +.IX Item "extflags" +.ie n .IP """minlen"" ""minlenret""" 4 +.el .IP "\f(CWminlen\fR \f(CWminlenret\fR" 4 +.IX Item "minlen minlenret" +.ie n .IP """gofs""" 4 +.el .IP \f(CWgofs\fR 4 +.IX Item "gofs" +.ie n .IP """substrs""" 4 +.el .IP \f(CWsubstrs\fR 4 +.IX Item "substrs" +.ie n .IP """nparens"", ""lastparen"", and ""lastcloseparen""" 4 +.el .IP "\f(CWnparens\fR, \f(CWlastparen\fR, and \f(CWlastcloseparen\fR" 4 +.IX Item "nparens, lastparen, and lastcloseparen" +.ie n .IP """intflags""" 4 +.el .IP \f(CWintflags\fR 4 +.IX Item "intflags" +.ie n .IP """pprivate""" 4 +.el .IP \f(CWpprivate\fR 4 +.IX Item "pprivate" +.ie n .IP """offs""" 4 +.el .IP \f(CWoffs\fR 4 +.IX Item "offs" +.ie n .IP """precomp"" ""prelen""" 4 +.el .IP "\f(CWprecomp\fR \f(CWprelen\fR" 4 +.IX Item "precomp prelen" +.ie n .IP """paren_names""" 4 +.el .IP \f(CWparen_names\fR 4 +.IX Item "paren_names" +.ie n .IP """substrs""" 4 +.el .IP \f(CWsubstrs\fR 4 +.IX Item "substrs" +.ie n .IP """subbeg"" ""sublen"" ""saved_copy"" ""suboffset"" ""subcoffset""" 4 +.el .IP "\f(CWsubbeg\fR \f(CWsublen\fR \f(CWsaved_copy\fR \f(CWsuboffset\fR \f(CWsubcoffset\fR" 4 +.IX Item "subbeg sublen saved_copy suboffset subcoffset" +.ie n .IP """wrapped"" ""wraplen""" 4 +.el .IP "\f(CWwrapped\fR \f(CWwraplen\fR" 4 +.IX Item "wrapped wraplen" +.ie n .IP """seen_evals""" 4 +.el .IP \f(CWseen_evals\fR 4 +.IX Item "seen_evals" +.ie n .IP """refcnt""" 4 +.el .IP \f(CWrefcnt\fR 4 +.IX Item "refcnt" +.RE +.RS 4 +.RE +.IP HISTORY 4 +.IX Item "HISTORY" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "perlreguts \- Description of the Perl regular expression engine." +.IX Subsection "perlreguts - Description of the Perl regular expression engine." +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP OVERVIEW 4 +.IX Item "OVERVIEW" +.RS 4 +.IP "A quick note on terms" 4 +.IX Item "A quick note on terms" +.IP "What is a regular expression engine?" 4 +.IX Item "What is a regular expression engine?" +.IP "Structure of a Regexp Program" 4 +.IX Item "Structure of a Regexp Program" +.PD +\&\f(CW\*(C`regnode_1\*(C'\fR, \f(CW\*(C`regnode_2\*(C'\fR, \f(CW\*(C`regnode_string\*(C'\fR, \f(CW\*(C`regnode_charclass\*(C'\fR, +\&\f(CW\*(C`regnode_charclass_posixl\*(C'\fR, "REGNODE_AFTER", "regnext" +.RE +.RS 4 +.RE +.IP "Process Overview" 4 +.IX Item "Process Overview" +A. Compilation, 1. Parsing, 2. Peep-hole optimisation and analysis, B. +Execution, 3. Start position and no-match optimisations, 4. Program +execution +.RS 4 +.IP Compilation 4 +.IX Item "Compilation" +anchored fixed strings, floating fixed strings, minimum and maximum length +requirements, start class, Beginning/End of line positions +.IP Execution 4 +.IX Item "Execution" +.RE +.RS 4 +.RE +.PD 0 +.IP MISCELLANEOUS 4 +.IX Item "MISCELLANEOUS" +.RS 4 +.IP "Unicode and Localisation Support" 4 +.IX Item "Unicode and Localisation Support" +.IP "Base Structures" 4 +.IX Item "Base Structures" +.PD +\&\f(CW\*(C`regstclass\*(C'\fR, \f(CW\*(C`data\*(C'\fR, \f(CW\*(C`code_blocks\*(C'\fR, \f(CW\*(C`proglen\*(C'\fR, \f(CW\*(C`name_list_idx\*(C'\fR, +\&\f(CW\*(C`program\*(C'\fR +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP REFERENCES 4 +.IX Item "REFERENCES" +.PD +.ie n .SS "perlclassguts \- Internals of how ""feature \*(Aqclass\*(Aq"" and class syntax works" +.el .SS "perlclassguts \- Internals of how \f(CWfeature \*(Aqclass\*(Aq\fP and class syntax works" +.IX Subsection "perlclassguts - Internals of how feature class and class syntax works" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "DATA STORAGE" 4 +.IX Item "DATA STORAGE" +.RS 4 +.IP Classes 4 +.IX Item "Classes" +.IP Fields 4 +.IX Item "Fields" +.IP Methods 4 +.IX Item "Methods" +.IP Instances 4 +.IX Item "Instances" +.RE +.RS 4 +.RE +.IP API 4 +.IX Item "API" +.RS 4 +.IP "Class Manipulation" 4 +.IX Item "Class Manipulation" +.IP "Field Manipulation" 4 +.IX Item "Field Manipulation" +.IP "Method Manipulation" 4 +.IX Item "Method Manipulation" +.IP "Object Instances" 4 +.IX Item "Object Instances" +.RE +.RS 4 +.RE +.IP OPCODES 4 +.IX Item "OPCODES" +.RS 4 +.IP OP_METHSTART 4 +.IX Item "OP_METHSTART" +.IP OP_INITFIELD 4 +.IX Item "OP_INITFIELD" +.RE +.RS 4 +.RE +.IP "COMPILE-TIME BEHAVIOUR" 4 +.IX Item "COMPILE-TIME BEHAVIOUR" +.RS 4 +.ie n .IP """ADJUST"" Phasers" 4 +.el .IP "\f(CWADJUST\fR Phasers" 4 +.IX Item "ADJUST Phasers" +.IP Attributes 4 +.IX Item "Attributes" +.IP "Field Initializing Expressions" 4 +.IX Item "Field Initializing Expressions" +.RE +.RS 4 +.RE +.IP "RUNTIME BEHAVIOUR" 4 +.IX Item "RUNTIME BEHAVIOUR" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.ie n .IP "$self Access During Methods" 4 +.el .IP "\f(CW$self\fR Access During Methods" 4 +.IX Item "$self Access During Methods" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "perlapi \- autogenerated documentation for the perl public API" +.IX Subsection "perlapi - autogenerated documentation for the perl public API" +.IP DESCRIPTION 4 +.IX Xref "Perl API API api" +.IX Item "DESCRIPTION" +"AV Handling" in perlapi, "Callback Functions" in perlapi, "Casting" in perlapi, +"Character case changing" in perlapi, "Character classification" in perlapi, +"Compiler and Preprocessor information" in perlapi, "Compiler +directives" in perlapi, "Compile-time scope hooks" in perlapi, "Concurrency" in perlapi, +"COPs and Hint Hashes" in perlapi, "Custom Operators" in perlapi, "CV +Handling" in perlapi, "Debugging" in perlapi, "Display functions" in perlapi, +"Embedding, Threads, and Interpreter Cloning" in perlapi, "Errno" in perlapi, +"Exception Handling (simple) Macros" in perlapi, "Filesystem +configuration values" in perlapi, "Floating point" in perlapi, "General +Configuration" in perlapi, "Global Variables" in perlapi, "GV Handling and +Stashes" in perlapi, "Hook manipulation" in perlapi, "HV Handling" in perlapi, +"Input/Output" in perlapi, "Integer" in perlapi, "I/O Formats" in perlapi, +"Lexer interface" in perlapi, "Locales" in perlapi, "Magic" in perlapi, +"Memory Management" in perlapi, "MRO" in perlapi, "Multicall +Functions" in perlapi, "Numeric Functions" in perlapi, "Optrees" in perlapi, +"Pack and Unpack" in perlapi, "Pad Data Structures" in perlapi, +"Password and Group access" in perlapi, "Paths to system commands" in perlapi, +"Prototype information" in perlapi, "REGEXP Functions" in perlapi, +"Reports and Formats" in perlapi, "Signals" in perlapi, "Site +configuration" in perlapi, "Sockets configuration values" in perlapi, "Source +Filters" in perlapi, "Stack Manipulation Macros" in perlapi, "String Handling" in perlapi, +"SV Flags" in perlapi, "SV Handling" in perlapi, "Tainting" in perlapi, +"Time" in perlapi, "Typedef names" in perlapi, "Unicode Support" in perlapi, +"Utility Functions" in perlapi, "Versioning" in perlapi, "Warning and +Dieing" in perlapi, "XS" in perlapi, "Undocumented elements" in perlapi +.IP "AV Handling" 4 +.IX Item "AV Handling" +\&\f(CW\*(C`AV\*(C'\fR, \f(CW\*(C`AvALLOC\*(C'\fR, \f(CW\*(C`AvARRAY\*(C'\fR , \f(CW\*(C`av_clear\*(C'\fR , +\&\f(CW\*(C`av_count\*(C'\fR , \f(CW\*(C`av_create_and_push\*(C'\fR , +\&\f(CW\*(C`av_create_and_unshift_one\*(C'\fR , \f(CW\*(C`av_delete\*(C'\fR +, \f(CW\*(C`av_exists\*(C'\fR , \f(CW\*(C`av_extend\*(C'\fR , +\&\f(CW\*(C`av_fetch\*(C'\fR , \f(CW\*(C`AvFILL\*(C'\fR , \f(CW\*(C`av_fill\*(C'\fR , +\&\f(CW\*(C`av_len\*(C'\fR , \f(CW\*(C`av_make\*(C'\fR , \f(CW\*(C`av_pop\*(C'\fR , \f(CW\*(C`av_push\*(C'\fR +, \f(CW\*(C`av_push_simple\*(C'\fR , \f(CW\*(C`av_shift\*(C'\fR , +\&\f(CW\*(C`av_store\*(C'\fR , \f(CW\*(C`av_tindex\*(C'\fR, \f(CW\*(C`av_top_index\*(C'\fR +, \f(CW\*(C`av_undef\*(C'\fR , \f(CW\*(C`av_unshift\*(C'\fR +, \f(CW\*(C`get_av\*(C'\fR , \f(CW\*(C`newAV\*(C'\fR, \f(CW\*(C`newAV_alloc_x\*(C'\fR, +\&\f(CW\*(C`newAV_alloc_xz\*(C'\fR , \f(CW\*(C`newAV\*(C'\fR form, +\&\f(CW\*(C`newAV_alloc_x\*(C'\fR form, \f(CW\*(C`newAV_alloc_xz\*(C'\fR form, \f(CW\*(C`newAVav\*(C'\fR , +\&\f(CW\*(C`newAVhv\*(C'\fR , \f(CW\*(C`Nullav\*(C'\fR +.IX Xref "AvARRAY av_clear av_count av_create_and_push av_create_and_unshift_one av_delete av_exists av_extend av_fetch AvFILL av_fill av_len av_make av_pop av_push av_push_simple av_shift av_store av_tindex av_top_index av_undef av_unshift get_av newAV newAV_alloc_x newAV_alloc_xz newAVav newAVhv Nullav" +.IP "Callback Functions" 4 +.IX Xref "G_METHOD G_METHOD_NAMED G_RETHROW SAVEf_KEEPOLDELEM SAVEf_SETMAGI C" +.IX Item "Callback Functions" +\&\f(CW\*(C`call_argv\*(C'\fR , \f(CW\*(C`call_method\*(C'\fR , \f(CW\*(C`call_pv\*(C'\fR +, \f(CW\*(C`call_sv\*(C'\fR , \f(CW\*(C`DESTRUCTORFUNC_NOCONTEXT_t\*(C'\fR, +\&\f(CW\*(C`DESTRUCTORFUNC_t\*(C'\fR, \f(CW\*(C`ENTER\*(C'\fR , \f(CW\*(C`ENTER_with_name\*(C'\fR +, \f(CW\*(C`eval_pv\*(C'\fR , \f(CW\*(C`eval_sv\*(C'\fR , +\&\f(CW\*(C`FREETMPS\*(C'\fR , \f(CW\*(C`G_DISCARD\*(C'\fR, \f(CW\*(C`G_EVAL\*(C'\fR, \f(CW\*(C`GIMME\*(C'\fR , +\&\f(CW\*(C`GIMME_V\*(C'\fR , \f(CW\*(C`G_KEEPERR\*(C'\fR, \f(CW\*(C`G_LIST\*(C'\fR, \f(CW\*(C`G_NOARGS\*(C'\fR, \f(CW\*(C`G_SCALAR\*(C'\fR, +\&\f(CW\*(C`G_VOID\*(C'\fR, \f(CW\*(C`is_lvalue_sub\*(C'\fR , \f(CW\*(C`LEAVE\*(C'\fR , +\&\f(CW\*(C`LEAVE_with_name\*(C'\fR , \f(CW\*(C`MORTALDESTRUCTOR_SV\*(C'\fR, +\&\f(CW\*(C`mortal_destructor_sv\*(C'\fR , \f(CW\*(C`MORTALDESTRUCTOR_X\*(C'\fR, +\&\f(CW\*(C`PL_errgv\*(C'\fR, \f(CW\*(C`save_aelem\*(C'\fR, \f(CW\*(C`save_aelem_flags\*(C'\fR +, \f(CW\*(C`save_aptr\*(C'\fR, \f(CW\*(C`save_ary\*(C'\fR, \f(CW\*(C`SAVEBOOL\*(C'\fR, +\&\f(CW\*(C`SAVEDELETE\*(C'\fR, \f(CW\*(C`SAVEDESTRUCTOR\*(C'\fR, \f(CW\*(C`SAVEDESTRUCTOR_X\*(C'\fR, \f(CW\*(C`SAVEFREEOP\*(C'\fR, +\&\f(CW\*(C`SAVEFREEPV\*(C'\fR, \f(CW\*(C`SAVEFREERCPV\*(C'\fR, \f(CW\*(C`SAVEFREESV\*(C'\fR, \f(CW\*(C`SAVEGENERICSV\*(C'\fR, +\&\f(CW\*(C`save_hash\*(C'\fR, \f(CW\*(C`save_helem\*(C'\fR, \f(CW\*(C`save_helem_flags\*(C'\fR +, \f(CW\*(C`save_hptr\*(C'\fR, \f(CW\*(C`SAVEINT\*(C'\fR, \f(CW\*(C`save_item\*(C'\fR, +\&\f(CW\*(C`SAVEIV\*(C'\fR, \f(CW\*(C`SAVEI8\*(C'\fR, \f(CW\*(C`SAVEI16\*(C'\fR, \f(CW\*(C`SAVEI32\*(C'\fR, \f(CW\*(C`SAVELONG\*(C'\fR, +\&\f(CW\*(C`SAVEMORTALIZESV\*(C'\fR, \f(CW\*(C`SAVEPPTR\*(C'\fR, \f(CW\*(C`SAVERCPV\*(C'\fR, \f(CW\*(C`save_scalar\*(C'\fR, \f(CW\*(C`SAVESPTR\*(C'\fR, +\&\f(CW\*(C`SAVESTACK_POS\*(C'\fR, \f(CW\*(C`SAVESTRLEN\*(C'\fR, \f(CW\*(C`save_svref\*(C'\fR, \f(CW\*(C`SAVETMPS\*(C'\fR +.IX Xref "call_argv call_method call_pv call_sv ENTER ENTER_with_name eval_pv eval_sv FREETMPS GIMME GIMME_V is_lvalue_sub LEAVE LEAVE_with_name mortal_destructor_sv save_aelem save_aelem_flags save_helem save_helem_flags SAVETMPS" +.IP Casting 4 +.IX Item "Casting" +\&\f(CW\*(C`Atof\*(C'\fR , \f(CW\*(C`cBOOL\*(C'\fR , \f(CW\*(C`INT2PTR\*(C'\fR, \f(CW\*(C`I_V\*(C'\fR , \f(CW\*(C`I_32\*(C'\fR +, \f(CW\*(C`PTR2IV\*(C'\fR, \f(CW\*(C`PTR2nat\*(C'\fR, \f(CW\*(C`PTR2NV\*(C'\fR, \f(CW\*(C`PTR2ul\*(C'\fR, \f(CW\*(C`PTR2UV\*(C'\fR, \f(CW\*(C`PTRV\*(C'\fR, +\&\f(CW\*(C`U_V\*(C'\fR , \f(CW\*(C`U_32\*(C'\fR +.IX Xref "Atof cBOOL I_V I_32 U_V U_32" +.IP "Character case changing" 4 +.IX Item "Character case changing" +\&\f(CW\*(C`toFOLD\*(C'\fR, \f(CW\*(C`toFOLD_A\*(C'\fR, \f(CW\*(C`toFOLD_utf8\*(C'\fR, \f(CW\*(C`toFOLD_utf8_safe\*(C'\fR, +\&\f(CW\*(C`toFOLD_uvchr\*(C'\fR +, +\&\f(CW\*(C`toLOWER\*(C'\fR, \f(CW\*(C`toLOWER_A\*(C'\fR, \f(CW\*(C`toLOWER_LATIN1\*(C'\fR, \f(CW\*(C`toLOWER_LC\*(C'\fR, \f(CW\*(C`toLOWER_L1\*(C'\fR, +\&\f(CW\*(C`toLOWER_utf8\*(C'\fR, \f(CW\*(C`toLOWER_utf8_safe\*(C'\fR, \f(CW\*(C`toLOWER_uvchr\*(C'\fR +, \f(CW\*(C`toTITLE\*(C'\fR, \f(CW\*(C`toTITLE_A\*(C'\fR, +\&\f(CW\*(C`toTITLE_utf8\*(C'\fR, \f(CW\*(C`toTITLE_utf8_safe\*(C'\fR, \f(CW\*(C`toTITLE_uvchr\*(C'\fR +, +\&\f(CW\*(C`toUPPER\*(C'\fR, \f(CW\*(C`toUPPER_A\*(C'\fR, \f(CW\*(C`toUPPER_utf8\*(C'\fR, \f(CW\*(C`toUPPER_utf8_safe\*(C'\fR, +\&\f(CW\*(C`toUPPER_uvchr\*(C'\fR +.IX Xref "toFOLD toFOLD_A toFOLD_utf8 toFOLD_utf8_safe toFOLD_uvchr toLOWER toLOWER_A toLOWER_LATIN1 toLOWER_LC toLOWER_L1 toLOWER_ utf8 toLOWER_utf8_safe toLOWER_uvchr toTITLE toTITLE_A toTITLE_utf8 toTITLE_utf8_safe toTITLE_uvchr toUPPER toUPPER_A toUPPER_utf8 toUPPER_utf8_safe toUPPER_uvchr" +.IP "Character classification" 4 +.IX Item "Character classification" +\&\f(CW\*(C`isALNUM\*(C'\fR, \f(CW\*(C`isALNUM_A\*(C'\fR, \f(CW\*(C`isALNUM_LC\*(C'\fR, \f(CW\*(C`isALNUM_LC_uvchr\*(C'\fR +, \f(CW\*(C`isALNUMC\*(C'\fR, +\&\f(CW\*(C`isALNUMC_A\*(C'\fR, \f(CW\*(C`isALNUMC_LC\*(C'\fR, \f(CW\*(C`isALNUMC_LC_uvchr\*(C'\fR, \f(CW\*(C`isALNUMC_L1\*(C'\fR +, +\&\f(CW\*(C`isALPHA\*(C'\fR, \f(CW\*(C`isALPHA_A\*(C'\fR, \f(CW\*(C`isALPHA_LC\*(C'\fR, \f(CW\*(C`isALPHA_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isALPHA_LC_uvchr\*(C'\fR, \f(CW\*(C`isALPHA_L1\*(C'\fR, \f(CW\*(C`isALPHA_utf8\*(C'\fR, \f(CW\*(C`isALPHA_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isALPHA_uvchr\*(C'\fR +, +\&\f(CW\*(C`isALPHANUMERIC\*(C'\fR, \f(CW\*(C`isALPHANUMERIC_A\*(C'\fR, \f(CW\*(C`isALPHANUMERIC_LC\*(C'\fR, +\&\f(CW\*(C`isALPHANUMERIC_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isALPHANUMERIC_LC_uvchr\*(C'\fR, +\&\f(CW\*(C`isALPHANUMERIC_L1\*(C'\fR, \f(CW\*(C`isALPHANUMERIC_utf8\*(C'\fR, \f(CW\*(C`isALPHANUMERIC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isALPHANUMERIC_uvchr\*(C'\fR +, \f(CW\*(C`isASCII\*(C'\fR, +\&\f(CW\*(C`isASCII_A\*(C'\fR, \f(CW\*(C`isASCII_LC\*(C'\fR, \f(CW\*(C`isASCII_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isASCII_LC_uvchr\*(C'\fR, +\&\f(CW\*(C`isASCII_L1\*(C'\fR, \f(CW\*(C`isASCII_utf8\*(C'\fR, \f(CW\*(C`isASCII_utf8_safe\*(C'\fR, \f(CW\*(C`isASCII_uvchr\*(C'\fR +, +\&\f(CW\*(C`isBLANK\*(C'\fR, \f(CW\*(C`isBLANK_A\*(C'\fR, \f(CW\*(C`isBLANK_LC\*(C'\fR, \f(CW\*(C`isBLANK_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isBLANK_LC_uvchr\*(C'\fR, \f(CW\*(C`isBLANK_L1\*(C'\fR, \f(CW\*(C`isBLANK_utf8\*(C'\fR, \f(CW\*(C`isBLANK_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isBLANK_uvchr\*(C'\fR +, +\&\f(CW\*(C`isCNTRL\*(C'\fR, \f(CW\*(C`isCNTRL_A\*(C'\fR, \f(CW\*(C`isCNTRL_LC\*(C'\fR, \f(CW\*(C`isCNTRL_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isCNTRL_LC_uvchr\*(C'\fR, \f(CW\*(C`isCNTRL_L1\*(C'\fR, \f(CW\*(C`isCNTRL_utf8\*(C'\fR, \f(CW\*(C`isCNTRL_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isCNTRL_uvchr\*(C'\fR +, +\&\f(CW\*(C`isDIGIT\*(C'\fR, \f(CW\*(C`isDIGIT_A\*(C'\fR, \f(CW\*(C`isDIGIT_LC\*(C'\fR, \f(CW\*(C`isDIGIT_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isDIGIT_LC_uvchr\*(C'\fR, \f(CW\*(C`isDIGIT_L1\*(C'\fR, \f(CW\*(C`isDIGIT_utf8\*(C'\fR, \f(CW\*(C`isDIGIT_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isDIGIT_uvchr\*(C'\fR +, +\&\f(CW\*(C`isGRAPH\*(C'\fR, \f(CW\*(C`isGRAPH_A\*(C'\fR, \f(CW\*(C`isGRAPH_LC\*(C'\fR, \f(CW\*(C`isGRAPH_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isGRAPH_LC_uvchr\*(C'\fR, \f(CW\*(C`isGRAPH_L1\*(C'\fR, \f(CW\*(C`isGRAPH_utf8\*(C'\fR, \f(CW\*(C`isGRAPH_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isGRAPH_uvchr\*(C'\fR +, +\&\f(CW\*(C`isIDCONT\*(C'\fR, \f(CW\*(C`isIDCONT_A\*(C'\fR, \f(CW\*(C`isIDCONT_LC\*(C'\fR, \f(CW\*(C`isIDCONT_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isIDCONT_LC_uvchr\*(C'\fR, \f(CW\*(C`isIDCONT_L1\*(C'\fR, \f(CW\*(C`isIDCONT_utf8\*(C'\fR, +\&\f(CW\*(C`isIDCONT_utf8_safe\*(C'\fR, \f(CW\*(C`isIDCONT_uvchr\*(C'\fR + +, \f(CW\*(C`isIDFIRST\*(C'\fR, \f(CW\*(C`isIDFIRST_A\*(C'\fR, \f(CW\*(C`isIDFIRST_LC\*(C'\fR, \f(CW\*(C`isIDFIRST_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isIDFIRST_LC_uvchr\*(C'\fR, \f(CW\*(C`isIDFIRST_L1\*(C'\fR, \f(CW\*(C`isIDFIRST_utf8\*(C'\fR, +\&\f(CW\*(C`isIDFIRST_utf8_safe\*(C'\fR, \f(CW\*(C`isIDFIRST_uvchr\*(C'\fR +, \f(CW\*(C`isLOWER\*(C'\fR, \f(CW\*(C`isLOWER_A\*(C'\fR, \f(CW\*(C`isLOWER_LC\*(C'\fR, +\&\f(CW\*(C`isLOWER_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isLOWER_LC_uvchr\*(C'\fR, \f(CW\*(C`isLOWER_L1\*(C'\fR, +\&\f(CW\*(C`isLOWER_utf8\*(C'\fR, \f(CW\*(C`isLOWER_utf8_safe\*(C'\fR, \f(CW\*(C`isLOWER_uvchr\*(C'\fR +, +\&\f(CW\*(C`isOCTAL\*(C'\fR, \f(CW\*(C`isOCTAL_A\*(C'\fR, \f(CW\*(C`isOCTAL_L1\*(C'\fR +, \f(CW\*(C`isPRINT\*(C'\fR, \f(CW\*(C`isPRINT_A\*(C'\fR, +\&\f(CW\*(C`isPRINT_LC\*(C'\fR, \f(CW\*(C`isPRINT_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isPRINT_LC_uvchr\*(C'\fR, \f(CW\*(C`isPRINT_L1\*(C'\fR, +\&\f(CW\*(C`isPRINT_utf8\*(C'\fR, \f(CW\*(C`isPRINT_utf8_safe\*(C'\fR, \f(CW\*(C`isPRINT_uvchr\*(C'\fR +, +\&\f(CW\*(C`isPSXSPC\*(C'\fR, \f(CW\*(C`isPSXSPC_A\*(C'\fR, \f(CW\*(C`isPSXSPC_LC\*(C'\fR, \f(CW\*(C`isPSXSPC_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isPSXSPC_LC_uvchr\*(C'\fR, \f(CW\*(C`isPSXSPC_L1\*(C'\fR, \f(CW\*(C`isPSXSPC_utf8\*(C'\fR, +\&\f(CW\*(C`isPSXSPC_utf8_safe\*(C'\fR, \f(CW\*(C`isPSXSPC_uvchr\*(C'\fR + +, \f(CW\*(C`isPUNCT\*(C'\fR, \f(CW\*(C`isPUNCT_A\*(C'\fR, \f(CW\*(C`isPUNCT_LC\*(C'\fR, \f(CW\*(C`isPUNCT_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isPUNCT_LC_uvchr\*(C'\fR, \f(CW\*(C`isPUNCT_L1\*(C'\fR, \f(CW\*(C`isPUNCT_utf8\*(C'\fR, \f(CW\*(C`isPUNCT_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isPUNCT_uvchr\*(C'\fR +, +\&\f(CW\*(C`isSPACE\*(C'\fR, \f(CW\*(C`isSPACE_A\*(C'\fR, \f(CW\*(C`isSPACE_LC\*(C'\fR, \f(CW\*(C`isSPACE_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isSPACE_LC_uvchr\*(C'\fR, \f(CW\*(C`isSPACE_L1\*(C'\fR, \f(CW\*(C`isSPACE_utf8\*(C'\fR, \f(CW\*(C`isSPACE_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isSPACE_uvchr\*(C'\fR +, +\&\f(CW\*(C`isUPPER\*(C'\fR, \f(CW\*(C`isUPPER_A\*(C'\fR, \f(CW\*(C`isUPPER_LC\*(C'\fR, \f(CW\*(C`isUPPER_LC_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isUPPER_LC_uvchr\*(C'\fR, \f(CW\*(C`isUPPER_L1\*(C'\fR, \f(CW\*(C`isUPPER_utf8\*(C'\fR, \f(CW\*(C`isUPPER_utf8_safe\*(C'\fR, +\&\f(CW\*(C`isUPPER_uvchr\*(C'\fR +, +\&\f(CW\*(C`isWORDCHAR\*(C'\fR, \f(CW\*(C`isWORDCHAR_A\*(C'\fR, \f(CW\*(C`isWORDCHAR_LC\*(C'\fR, +\&\f(CW\*(C`isWORDCHAR_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isWORDCHAR_LC_uvchr\*(C'\fR, \f(CW\*(C`isWORDCHAR_L1\*(C'\fR, +\&\f(CW\*(C`isWORDCHAR_utf8\*(C'\fR, \f(CW\*(C`isWORDCHAR_utf8_safe\*(C'\fR, \f(CW\*(C`isWORDCHAR_uvchr\*(C'\fR +X +<isWORDCHAR_uvchr>, \f(CW\*(C`isXDIGIT\*(C'\fR, \f(CW\*(C`isXDIGIT_A\*(C'\fR, \f(CW\*(C`isXDIGIT_LC\*(C'\fR, +\&\f(CW\*(C`isXDIGIT_LC_utf8_safe\*(C'\fR, \f(CW\*(C`isXDIGIT_LC_uvchr\*(C'\fR, \f(CW\*(C`isXDIGIT_L1\*(C'\fR, +\&\f(CW\*(C`isXDIGIT_utf8\*(C'\fR, \f(CW\*(C`isXDIGIT_utf8_safe\*(C'\fR, \f(CW\*(C`isXDIGIT_uvchr\*(C'\fR +.IX Xref "isALNUM isALNUM_A isALNUM_LC isALNUM_LC_uvchr isALNUMC isALNUMC_A isALNUMC_LC isALNUMC_LC_uvchr isALNUMC_L1 isALPHA isALPHA_A isALPHA_LC isALPHA_LC_utf8_safe isALPHA_LC_uvch r isALPHA_L1 isALPHA_utf8 isALPHA_utf8_safe isALPHA_uvchr isALPHANUMERIC isALPHANUMERIC_A isALPHANUMERIC_LC isALPHANUMERIC_LC _utf8_safe isALPHANUMERIC_LC_uvchr isALPHANUMERIC_L1 isALPHANUMERIC_u tf8 isALPHANUMERIC_utf8_safe isALPHANUMERIC_uvchr isASCII isASCII_A isASCII_LC isASCII_LC_utf8_safe isASCII_LC_uvch r isASCII_L1 isASCII_utf8 isASCII_utf8_safe isASCII_uvchr isBLANK isBLANK_A isBLANK_LC isBLANK_LC_utf8_safe isBLANK_LC_uvch r isBLANK_L1 isBLANK_utf8 isBLANK_utf8_safe isBLANK_uvchr isCNTRL isCNTRL_A isCNTRL_LC isCNTRL_LC_utf8_safe isCNTRL_LC_uvch r isCNTRL_L1 isCNTRL_utf8 isCNTRL_utf8_safe isCNTRL_uvchr isDIGIT isDIGIT_A isDIGIT_LC isDIGIT_LC_utf8_safe isDIGIT_LC_uvch r isDIGIT_L1 isDIGIT_utf8 isDIGIT_utf8_safe isDIGIT_uvchr isGRAPH isGRAPH_A isGRAPH_LC isGRAPH_LC_utf8_safe isGRAPH_LC_uvch r isGRAPH_L1 isGRAPH_utf8 isGRAPH_utf8_safe isGRAPH_uvchr isIDCONT isIDCONT_A isIDCONT_LC isIDCONT_LC_utf8_safe isIDCONT_LC _uvchr isIDCONT_L1 isIDCONT_utf8 isIDCONT_utf8_safe isIDCONT_uvchr isIDFIRST isIDFIRST_A isIDFIRST_LC isIDFIRST_LC_utf8_safe isIDFIR ST_LC_uvchr isIDFIRST_L1 isIDFIRST_utf8 isIDFIRST_utf8_safe isIDFIR ST_uvchr isLOWER isLOWER_A isLOWER_LC isLOWER_LC_utf8_safe isLOWER_LC_uvch r isLOWER_L1 isLOWER_utf8 isLOWER_utf8_safe isLOWER_uvchr isOCTAL isOCTAL_A isOCTAL_L1 isPRINT isPRINT_A isPRINT_LC isPRINT_LC_utf8_safe isPRINT_LC_uvch r isPRINT_L1 isPRINT_utf8 isPRINT_utf8_safe isPRINT_uvchr isPSXSPC isPSXSPC_A isPSXSPC_LC isPSXSPC_LC_utf8_safe isPSXSPC_LC _uvchr isPSXSPC_L1 isPSXSPC_utf8 isPSXSPC_utf8_safe isPSXSPC_uvchr isPUNCT isPUNCT_A isPUNCT_LC isPUNCT_LC_utf8_safe isPUNCT_LC_uvch r isPUNCT_L1 isPUNCT_utf8 isPUNCT_utf8_safe isPUNCT_uvchr isSPACE isSPACE_A isSPACE_LC isSPACE_LC_utf8_safe isSPACE_LC_uvch r isSPACE_L1 isSPACE_utf8 isSPACE_utf8_safe isSPACE_uvchr isUPPER isUPPER_A isUPPER_LC isUPPER_LC_utf8_safe isUPPER_LC_uvch r isUPPER_L1 isUPPER_utf8 isUPPER_utf8_safe isUPPER_uvchr isWORDCHAR isWORDCHAR_A isWORDCHAR_LC isWORDCHAR_LC_utf8_safe isW ORDCHAR_LC_uvchr isWORDCHAR_L1 isWORDCHAR_utf8 isWORDCHAR_utf8_safe isXDIGIT isXDIGIT_A isXDIGIT_LC isXDIGIT_LC_utf8_safe isXDIGIT_LC _uvchr isXDIGIT_L1 isXDIGIT_utf8 isXDIGIT_utf8_safe isXDIGIT_uvchr" +.IP "Compiler and Preprocessor information" 4 +.IX Item "Compiler and Preprocessor information" +\&\f(CW\*(C`CPPLAST\*(C'\fR , \f(CW\*(C`CPPMINUS\*(C'\fR , \f(CW\*(C`CPPRUN\*(C'\fR , +\&\f(CW\*(C`CPPSTDIN\*(C'\fR , \f(CW\*(C`HASATTRIBUTE_ALWAYS_INLINE\*(C'\fR +, \f(CW\*(C`HASATTRIBUTE_DEPRECATED\*(C'\fR +, \f(CW\*(C`HASATTRIBUTE_FORMAT\*(C'\fR , +\&\f(CW\*(C`HASATTRIBUTE_NONNULL\*(C'\fR , \f(CW\*(C`HASATTRIBUTE_NORETURN\*(C'\fR +, \f(CW\*(C`HASATTRIBUTE_PURE\*(C'\fR , +\&\f(CW\*(C`HASATTRIBUTE_UNUSED\*(C'\fR , \f(CW\*(C`HASATTRIBUTE_VISIBILITY\*(C'\fR +, \f(CW\*(C`HASATTRIBUTE_WARN_UNUSED_RESULT\*(C'\fR +, \f(CW\*(C`HAS_BUILTIN_ADD_OVERFLOW\*(C'\fR +, \f(CW\*(C`HAS_BUILTIN_CHOOSE_EXPR\*(C'\fR +, \f(CW\*(C`HAS_BUILTIN_EXPECT\*(C'\fR , +\&\f(CW\*(C`HAS_BUILTIN_MUL_OVERFLOW\*(C'\fR , +\&\f(CW\*(C`HAS_BUILTIN_SUB_OVERFLOW\*(C'\fR , +\&\f(CW\*(C`HAS_C99_VARIADIC_MACROS\*(C'\fR , \f(CW\*(C`HAS_STATIC_INLINE\*(C'\fR +, \f(CW\*(C`MEM_ALIGNBYTES\*(C'\fR , +\&\f(CW\*(C`PERL_STATIC_INLINE\*(C'\fR , \f(CW\*(C`PERL_THREAD_LOCAL\*(C'\fR +, \f(CW\*(C`U32_ALIGNMENT_REQUIRED\*(C'\fR +.IX Xref "CPPLAST CPPMINUS CPPRUN CPPSTDIN HASATTRIBUTE_ALWAYS_INLINE HASATTRIBUTE_DEPRECATED HASATTRIBUTE_FORMAT HASATTRIBUTE_NONNULL HASATTRIBUTE_NORETURN HASATTRIBUTE_PURE HASATTRIBUTE_UNUSED HASATTRIBUTE_VISIBILITY HASATTRIBUTE_WARN_UNUSED_RESULT HAS_BUILTIN_ADD_OVERFLOW HAS_BUILTIN_CHOOSE_EXPR HAS_BUILTIN_EXPECT HAS_BUILTIN_MUL_OVERFLOW HAS_BUILTIN_SUB_OVERFLOW HAS_C99_VARIADIC_MACROS HAS_STATIC_INLINE MEM_ALIGNBYTES PERL_STATIC_INLINE PERL_THREAD_LOCAL U32_ALIGNMENT_REQUIRED" +.IP "Compiler directives" 4 +.IX Item "Compiler directives" +\&\f(CW\*(C`_\|_ASSERT_\*(C'\fR , \f(CW\*(C`ASSUME\*(C'\fR , \f(CW\*(C`dNOOP\*(C'\fR , +\&\f(CW\*(C`END_EXTERN_C\*(C'\fR , \f(CW\*(C`EXTERN_C\*(C'\fR , \f(CW\*(C`LIKELY\*(C'\fR +, \f(CW\*(C`NOOP\*(C'\fR , \f(CW\*(C`PERL_UNUSED_ARG\*(C'\fR , +\&\f(CW\*(C`PERL_UNUSED_CONTEXT\*(C'\fR , \f(CW\*(C`PERL_UNUSED_DECL\*(C'\fR +, \f(CW\*(C`PERL_UNUSED_RESULT\*(C'\fR , +\&\f(CW\*(C`PERL_UNUSED_VAR\*(C'\fR , \f(CW\*(C`START_EXTERN_C\*(C'\fR , +\&\f(CW\*(C`STATIC\*(C'\fR, \f(CW\*(C`STMT_END\*(C'\fR, \f(CW\*(C`STMT_START\*(C'\fR , \f(CW\*(C`UNLIKELY\*(C'\fR +.IX Xref "__ASSERT_ ASSUME dNOOP END_EXTERN_C EXTERN_C LIKELY NOOP PERL_UNUSED_ARG PERL_UNUSED_CONTEXT PERL_UNUSED_DECL PERL_UNUSED_RESULT PERL_UNUSED_VAR START_EXTERN_C STMT_END STMT_START UNLIKELY" +.IP "Compile-time scope hooks" 4 +.IX Item "Compile-time scope hooks" +\&\f(CW\*(C`BhkDISABLE\*(C'\fR , \f(CW\*(C`BhkENABLE\*(C'\fR , \f(CW\*(C`BhkENTRY_set\*(C'\fR +, \f(CW\*(C`blockhook_register\*(C'\fR +.IX Xref "BhkDISABLE BhkENABLE BhkENTRY_set blockhook_register" +.IP Concurrency 4 +.IX Item "Concurrency" +\&\f(CW\*(C`aTHX\*(C'\fR, \f(CW\*(C`aTHX_\*(C'\fR, \f(CW\*(C`CPERLscope\*(C'\fR , \f(CW\*(C`dTHR\*(C'\fR, \f(CW\*(C`dTHX\*(C'\fR, \f(CW\*(C`dTHXa\*(C'\fR +, \f(CW\*(C`dTHXoa\*(C'\fR , \f(CW\*(C`dVAR\*(C'\fR , +\&\f(CW\*(C`GETENV_PRESERVES_OTHER_THREAD\*(C'\fR , +\&\f(CW\*(C`HAS_PTHREAD_ATFORK\*(C'\fR , \f(CW\*(C`HAS_PTHREAD_ATTR_SETSCOPE\*(C'\fR +, \f(CW\*(C`HAS_PTHREAD_YIELD\*(C'\fR , +\&\f(CW\*(C`HAS_SCHED_YIELD\*(C'\fR , \f(CW\*(C`I_MACH_CTHREADS\*(C'\fR +, \f(CW\*(C`I_PTHREAD\*(C'\fR , \f(CW\*(C`MULTIPLICITY\*(C'\fR, +\&\f(CW\*(C`OLD_PTHREAD_CREATE_JOINABLE\*(C'\fR , +\&\f(CW\*(C`OLD_PTHREADS_API\*(C'\fR , \f(CW\*(C`PERL_IMPLICIT_CONTEXT\*(C'\fR, +\&\f(CW\*(C`PERL_NO_GET_CONTEXT\*(C'\fR, \f(CW\*(C`pTHX\*(C'\fR, \f(CW\*(C`pTHX_\*(C'\fR, \f(CW\*(C`SCHED_YIELD\*(C'\fR +.IX Xref "CPERLscope dTHXa dTHXoa dVAR GETENV_PRESERVES_OTHER_THREAD HAS_PTHREAD_ATFORK HAS_PTHREAD_ATTR_SETSCOPE HAS_PTHREAD_YIELD HAS_SCHED_YIELD I_MACH_CTHREADS I_PTHREAD OLD_PTHREAD_CREATE_JOINABLE OLD_PTHREADS_API SCHED_YIELD" +.IP "COPs and Hint Hashes" 4 +.IX Xref "COPHH_KEY_UTF8" +.IX Item "COPs and Hint Hashes" +\&\f(CW\*(C`cop_fetch_label\*(C'\fR , \f(CW\*(C`CopFILE\*(C'\fR , \f(CW\*(C`CopFILEAV\*(C'\fR +, \f(CW\*(C`CopFILEAVn\*(C'\fR , \f(CW\*(C`CopFILE_copy\*(C'\fR , +\&\f(CW\*(C`CopFILE_free\*(C'\fR , \f(CW\*(C`CopFILEGV\*(C'\fR , +\&\f(CW\*(C`CopFILEGV_set\*(C'\fR , \f(CW\*(C`CopFILE_LEN\*(C'\fR , +\&\f(CW\*(C`CopFILE_set\*(C'\fR , \f(CW\*(C`CopFILE_setn\*(C'\fR , +\&\f(CW\*(C`CopFILESV\*(C'\fR , \f(CW\*(C`cophh_copy\*(C'\fR , \f(CW\*(C`cophh_delete_pv\*(C'\fR, +\&\f(CW\*(C`cophh_delete_pvn\*(C'\fR, \f(CW\*(C`cophh_delete_pvs\*(C'\fR, \f(CW\*(C`cophh_delete_sv\*(C'\fR +, +\&\f(CW\*(C`cophh_exists_pvn\*(C'\fR , \f(CW\*(C`cophh_fetch_pv\*(C'\fR, +\&\f(CW\*(C`cophh_fetch_pvn\*(C'\fR, \f(CW\*(C`cophh_fetch_pvs\*(C'\fR, \f(CW\*(C`cophh_fetch_sv\*(C'\fR +, +\&\f(CW\*(C`cophh_free\*(C'\fR , \f(CW\*(C`cophh_2hv\*(C'\fR , \f(CW\*(C`cophh_new_empty\*(C'\fR +, \f(CW\*(C`cophh_store_pv\*(C'\fR, \f(CW\*(C`cophh_store_pvn\*(C'\fR, +\&\f(CW\*(C`cophh_store_pvs\*(C'\fR, \f(CW\*(C`cophh_store_sv\*(C'\fR +, +\&\f(CW\*(C`cop_hints_exists_pv\*(C'\fR, \f(CW\*(C`cop_hints_exists_pvn\*(C'\fR, \f(CW\*(C`cop_hints_exists_pvs\*(C'\fR, +\&\f(CW\*(C`cop_hints_exists_sv\*(C'\fR +, \f(CW\*(C`cop_hints_fetch_pv\*(C'\fR, \f(CW\*(C`cop_hints_fetch_pvn\*(C'\fR, +\&\f(CW\*(C`cop_hints_fetch_pvs\*(C'\fR, \f(CW\*(C`cop_hints_fetch_sv\*(C'\fR +, \f(CW\*(C`cop_hints_2hv\*(C'\fR , \f(CW\*(C`CopLABEL\*(C'\fR, +\&\f(CW\*(C`CopLABEL_len\*(C'\fR, \f(CW\*(C`CopLABEL_len_flags\*(C'\fR +, \f(CW\*(C`CopLINE\*(C'\fR , +\&\f(CW\*(C`CopSTASH\*(C'\fR , \f(CW\*(C`CopSTASH_eq\*(C'\fR , \f(CW\*(C`CopSTASHPV\*(C'\fR +, \f(CW\*(C`CopSTASHPV_set\*(C'\fR , \f(CW\*(C`CopSTASH_set\*(C'\fR +, \f(CW\*(C`cop_store_label\*(C'\fR , \f(CW\*(C`PERL_SI\*(C'\fR +, \f(CW\*(C`PL_curcop\*(C'\fR , \f(CW\*(C`RCPV_LEN\*(C'\fR , +\&\f(CW\*(C`RCPV_REFCNT_dec\*(C'\fR , \f(CW\*(C`RCPV_REFCNT_inc\*(C'\fR +, \f(CW\*(C`RCPV_REFCOUNT\*(C'\fR , \f(CW\*(C`RCPVx\*(C'\fR +.IX Xref "cop_fetch_label CopFILE CopFILEAV CopFILEAVn CopFILE_copy CopFILE_free CopFILEGV CopFILEGV_set CopFILE_LEN CopFILE_set CopFILE_setn CopFILESV cophh_copy cophh_delete_pv cophh_delete_pvn cophh_delete_pvs cophh_delete_sv cophh_exists_pvn cophh_fetch_pv cophh_fetch_pvn cophh_fetch_pvs cophh_fetch_sv cophh_free cophh_2hv cophh_new_empty cophh_store_pv cophh_store_pvn cophh_store_pvs cophh_store_sv cop_hints_exists_pv cop_hints_exists_pvn cop_hints_exists_pvs cop_h ints_exists_sv cop_hints_fetch_pv cop_hints_fetch_pvn cop_hints_fetch_pvs cop_hint s_fetch_sv cop_hints_2hv CopLABEL CopLABEL_len CopLABEL_len_flags CopLINE CopSTASH CopSTASH_eq CopSTASHPV CopSTASHPV_set CopSTASH_set cop_store_label PERL_SI PL_curcop RCPV_LEN RCPV_REFCNT_dec RCPV_REFCNT_inc RCPV_REFCOUNT RCPVx" +.IP "Custom Operators" 4 +.IX Item "Custom Operators" +\&\f(CW\*(C`custom_op_register\*(C'\fR , \f(CW\*(C`Perl_custom_op_xop\*(C'\fR +, \f(CW\*(C`XopDISABLE\*(C'\fR , \f(CW\*(C`XopENABLE\*(C'\fR +, \f(CW\*(C`XopENTRY\*(C'\fR , \f(CW\*(C`XopENTRYCUSTOM\*(C'\fR , +\&\f(CW\*(C`XopENTRY_set\*(C'\fR , \f(CW\*(C`XopFLAGS\*(C'\fR +.IX Xref "custom_op_register Perl_custom_op_xop XopDISABLE XopENABLE XopENTRY XopENTRYCUSTOM XopENTRY_set XopFLAGS" +.IP "CV Handling" 4 +.IX Xref "CV GV_ADD" +.IX Item "CV Handling" +\&\f(CW\*(C`caller_cx\*(C'\fR , \f(CW\*(C`CvDEPTH\*(C'\fR , \f(CW\*(C`CvGV\*(C'\fR , +\&\f(CW\*(C`CvSTASH\*(C'\fR , \f(CW\*(C`find_runcv\*(C'\fR , \f(CW\*(C`get_cv\*(C'\fR, +\&\f(CW\*(C`get_cvn_flags\*(C'\fR, \f(CW\*(C`get_cvs\*(C'\fR , \f(CW\*(C`Nullcv\*(C'\fR +.IX Xref "caller_cx CvDEPTH CvGV CvSTASH find_runcv get_cv get_cvn_flags get_cvs Nullcv" +.IP Debugging 4 +.IX Item "Debugging" +\&\f(CW\*(C`av_dump\*(C'\fR , \f(CW\*(C`deb\*(C'\fR, \f(CW\*(C`deb_nocontext\*(C'\fR , +\&\f(CW\*(C`debstack\*(C'\fR , \f(CW\*(C`dump_all\*(C'\fR , \f(CW\*(C`dump_c_backtrace\*(C'\fR +, \f(CW\*(C`dump_eval\*(C'\fR, \f(CW\*(C`dump_form\*(C'\fR , +\&\f(CW\*(C`dump_packsubs\*(C'\fR , \f(CW\*(C`dump_sub\*(C'\fR, \f(CW\*(C`get_c_backtrace_dump\*(C'\fR +, \f(CW\*(C`gv_dump\*(C'\fR , \f(CW\*(C`HAS_BACKTRACE\*(C'\fR +, \f(CW\*(C`hv_dump\*(C'\fR , \f(CW\*(C`magic_dump\*(C'\fR , +\&\f(CW\*(C`op_class\*(C'\fR , \f(CW\*(C`op_dump\*(C'\fR , \f(CW\*(C`PL_op\*(C'\fR, \f(CW\*(C`PL_runops\*(C'\fR, +\&\f(CW\*(C`PL_sv_serial\*(C'\fR, \f(CW\*(C`pmop_dump\*(C'\fR , \f(CW\*(C`sv_dump\*(C'\fR , +\&\f(CW\*(C`sv_dump_depth\*(C'\fR , \f(CW\*(C`vdeb\*(C'\fR +.IX Xref "av_dump deb deb_nocontext debstack dump_all dump_c_backtrace dump_form dump_packsubs get_c_backtrace_dump gv_dump HAS_BACKTRACE hv_dump magic_dump op_class op_dump pmop_dump sv_dump sv_dump_depth vdeb" +.IP "Display functions" 4 +.IX Xref "PERL_PV_ESCAPE_ALL PERL_PV_ESCAPE_FIRSTCHAR PERL_PV_ESCAPE_NOBACKSLAS H PERL_PV_ESCAPE_NOCLEAR PERL_PV_ESCAPE_NONASCII PERL_PV_ESCAPE_NON_W C PERL_PV_ESCAPE_QUOTE PERL_PV_ESCAPE_RE PERL_PV_ESCAPE_UNI PERL_PV _ESCAPE_UNI_DETECT PERL_PV_PRETTY_ELLIPSES PERL_PV_PRETTY_LTGT PERL_P V_PRETTY_QUOTE" +.IX Item "Display functions" +\&\f(CW\*(C`form\*(C'\fR, \f(CW\*(C`form_nocontext\*(C'\fR , \f(CW\*(C`mess\*(C'\fR, +\&\f(CW\*(C`mess_nocontext\*(C'\fR , \f(CW\*(C`mess_sv\*(C'\fR , +\&\f(CW\*(C`pv_display\*(C'\fR , \f(CW\*(C`pv_escape\*(C'\fR , \f(CW\*(C`pv_pretty\*(C'\fR +, \f(CW\*(C`vform\*(C'\fR , \f(CW\*(C`vmess\*(C'\fR +.IX Xref "form form_nocontext mess mess_nocontext mess_sv pv_display pv_escape pv_pretty vform vmess" +.IP "Embedding, Threads, and Interpreter Cloning" 4 +.IX Xref "CV_NAME_NOTQUAL PADNAMEf_OUTER PERL_EXIT_ABORT PERL_EXIT_DESTRUCT_E ND PERL_EXIT_EXPECTED PERL_EXIT_WARN PERL_LOADMOD_DENY PERL_LOADMOD _IMPORT_OPS PERL_LOADMOD_NOIMPORT" +.IX Item "Embedding, Threads, and Interpreter Cloning" +\&\f(CW\*(C`call_atexit\*(C'\fR , \f(CW\*(C`cv_clone\*(C'\fR , \f(CW\*(C`cv_name\*(C'\fR +, \f(CW\*(C`cv_undef\*(C'\fR , \f(CW\*(C`find_rundefsv\*(C'\fR , +\&\f(CW\*(C`get_op_descs\*(C'\fR , \f(CW\*(C`get_op_names\*(C'\fR , +\&\f(CW\*(C`HAS_SKIP_LOCALE_INIT\*(C'\fR, \f(CW\*(C`intro_my\*(C'\fR , \f(CW\*(C`load_module\*(C'\fR, +\&\f(CW\*(C`load_module_nocontext\*(C'\fR , \f(CW\*(C`my_exit\*(C'\fR +, \f(CW\*(C`my_failure_exit\*(C'\fR , \f(CW\*(C`my_strlcat\*(C'\fR +, \f(CW\*(C`my_strlcpy\*(C'\fR , \f(CW\*(C`newPADNAMELIST\*(C'\fR +, \f(CW\*(C`newPADNAMEouter\*(C'\fR , \f(CW\*(C`newPADNAMEpvn\*(C'\fR +, \f(CW\*(C`nothreadhook\*(C'\fR , \f(CW\*(C`pad_add_anon\*(C'\fR +, \f(CW\*(C`pad_add_name_pv\*(C'\fR , \f(CW\*(C`pad_add_name_pvn\*(C'\fR +, \f(CW\*(C`pad_add_name_sv\*(C'\fR , \f(CW\*(C`pad_alloc\*(C'\fR +, \f(CW\*(C`pad_findmy_pv\*(C'\fR , \f(CW\*(C`pad_findmy_pvn\*(C'\fR +, \f(CW\*(C`pad_findmy_sv\*(C'\fR , \f(CW\*(C`padnamelist_fetch\*(C'\fR +, \f(CW\*(C`padnamelist_store\*(C'\fR , +\&\f(CW\*(C`pad_tidy\*(C'\fR , \f(CW\*(C`perl_alloc\*(C'\fR , \f(CW\*(C`PERL_ASYNC_CHECK\*(C'\fR, +\&\f(CW\*(C`perl_clone\*(C'\fR , \f(CW\*(C`perl_construct\*(C'\fR , +\&\f(CW\*(C`perl_destruct\*(C'\fR , \f(CW\*(C`perl_free\*(C'\fR , +\&\f(CW\*(C`PERL_GET_CONTEXT\*(C'\fR, \f(CW\*(C`PerlInterpreter\*(C'\fR, \f(CW\*(C`perl_parse\*(C'\fR , +\&\f(CW\*(C`perl_run\*(C'\fR , \f(CW\*(C`PERL_SET_CONTEXT\*(C'\fR, \f(CW\*(C`PERL_SYS_INIT\*(C'\fR, +\&\f(CW\*(C`PERL_SYS_INIT3\*(C'\fR , \f(CW\*(C`PERL_SYS_TERM\*(C'\fR +, \f(CW\*(C`PL_exit_flags\*(C'\fR , +\&\f(CW\*(C`PERL_EXIT_DESTRUCT_END\*(C'\fR, \f(CW\*(C`PERL_EXIT_ABORT\*(C'\fR, \f(CW\*(C`PERL_EXIT_WARN\*(C'\fR, +\&\f(CW\*(C`PERL_EXIT_EXPECTED\*(C'\fR, \f(CW\*(C`PL_origalen\*(C'\fR, \f(CW\*(C`PL_perl_destruct_level\*(C'\fR +, 0 \- none, 1 \- full, 2 or greater \- full with +checks, \f(CW\*(C`ptr_table_fetch\*(C'\fR , \f(CW\*(C`ptr_table_free\*(C'\fR +, \f(CW\*(C`ptr_table_new\*(C'\fR , \f(CW\*(C`ptr_table_split\*(C'\fR +, \f(CW\*(C`ptr_table_store\*(C'\fR , \f(CW\*(C`require_pv\*(C'\fR +, \f(CW\*(C`vload_module\*(C'\fR +.IX Xref "call_atexit cv_clone cv_name cv_undef find_rundefsv get_op_descs get_op_names intro_my load_module load_module_nocontext my_exit my_failure_exit my_strlcat my_strlcpy newPADNAMELIST newPADNAMEouter newPADNAMEpvn nothreadhook pad_add_anon pad_add_name_pv pad_add_name_pvn pad_add_name_sv pad_alloc pad_findmy_pv pad_findmy_pvn pad_findmy_sv padnamelist_fetch padnamelist_store pad_tidy perl_alloc perl_clone perl_construct perl_destruct perl_free perl_parse perl_run PERL_SYS_INIT PERL_SYS_INIT3 PERL_SYS_TERM PL_exit_flags PL_perl_destruct_level ptr_table_fetch ptr_table_free ptr_table_new ptr_table_split ptr_table_store require_pv vload_module" +.IP Errno 4 +.IX Item "Errno" +\&\f(CW\*(C`sv_string_from_errnum\*(C'\fR +.IX Xref "sv_string_from_errnum" +.IP "Exception Handling (simple) Macros" 4 +.IX Item "Exception Handling (simple) Macros" +\&\f(CW\*(C`dXCPT\*(C'\fR , \f(CW\*(C`JMPENV_JUMP\*(C'\fR, \f(CW\*(C`JMPENV_PUSH\*(C'\fR, \f(CW\*(C`PL_restartop\*(C'\fR, +\&\f(CW\*(C`XCPT_CATCH\*(C'\fR , \f(CW\*(C`XCPT_RETHROW\*(C'\fR , +\&\f(CW\*(C`XCPT_TRY_END\*(C'\fR , \f(CW\*(C`XCPT_TRY_START\*(C'\fR +.IX Xref "dXCPT XCPT_CATCH XCPT_RETHROW XCPT_TRY_END XCPT_TRY_START" +.IP "Filesystem configuration values" 4 +.IX Item "Filesystem configuration values" +\&\f(CW\*(C`DIRNAMLEN\*(C'\fR , \f(CW\*(C`DOSUID\*(C'\fR , \f(CW\*(C`EOF_NONBLOCK\*(C'\fR +, \f(CW\*(C`FCNTL_CAN_LOCK\*(C'\fR , \f(CW\*(C`FFLUSH_ALL\*(C'\fR +, \f(CW\*(C`FFLUSH_NULL\*(C'\fR , \f(CW\*(C`FILE_base\*(C'\fR , +\&\f(CW\*(C`FILE_bufsiz\*(C'\fR , \f(CW\*(C`FILE_cnt\*(C'\fR , \f(CW\*(C`FILE_ptr\*(C'\fR +, \f(CW\*(C`FLEXFILENAMES\*(C'\fR , \f(CW\*(C`HAS_DIR_DD_FD\*(C'\fR +, \f(CW\*(C`HAS_DUP2\*(C'\fR , \f(CW\*(C`HAS_DUP3\*(C'\fR , +\&\f(CW\*(C`HAS_FAST_STDIO\*(C'\fR , \f(CW\*(C`HAS_FCHDIR\*(C'\fR , +\&\f(CW\*(C`HAS_FCNTL\*(C'\fR , \f(CW\*(C`HAS_FDCLOSE\*(C'\fR , \f(CW\*(C`HAS_FPATHCONF\*(C'\fR +, \f(CW\*(C`HAS_FPOS64_T\*(C'\fR , \f(CW\*(C`HAS_FSTATFS\*(C'\fR +, \f(CW\*(C`HAS_FSTATVFS\*(C'\fR , \f(CW\*(C`HAS_GETFSSTAT\*(C'\fR +, \f(CW\*(C`HAS_GETMNT\*(C'\fR , \f(CW\*(C`HAS_GETMNTENT\*(C'\fR +, \f(CW\*(C`HAS_HASMNTOPT\*(C'\fR , \f(CW\*(C`HAS_LSEEK_PROTO\*(C'\fR +, \f(CW\*(C`HAS_MKDIR\*(C'\fR , \f(CW\*(C`HAS_OFF64_T\*(C'\fR +, \f(CW\*(C`HAS_OPENAT\*(C'\fR , \f(CW\*(C`HAS_OPEN3\*(C'\fR , +\&\f(CW\*(C`HAS_POLL\*(C'\fR , \f(CW\*(C`HAS_READDIR\*(C'\fR , \f(CW\*(C`HAS_READDIR64_R\*(C'\fR +, \f(CW\*(C`HAS_REWINDDIR\*(C'\fR , \f(CW\*(C`HAS_RMDIR\*(C'\fR +, \f(CW\*(C`HAS_SEEKDIR\*(C'\fR , \f(CW\*(C`HAS_SELECT\*(C'\fR , +\&\f(CW\*(C`HAS_SETVBUF\*(C'\fR , \f(CW\*(C`HAS_STDIO_STREAM_ARRAY\*(C'\fR +, \f(CW\*(C`HAS_STRUCT_FS_DATA\*(C'\fR , +\&\f(CW\*(C`HAS_STRUCT_STATFS\*(C'\fR , \f(CW\*(C`HAS_STRUCT_STATFS_F_FLAGS\*(C'\fR +, \f(CW\*(C`HAS_TELLDIR\*(C'\fR , \f(CW\*(C`HAS_USTAT\*(C'\fR +, \f(CW\*(C`I_FCNTL\*(C'\fR , \f(CW\*(C`I_SYS_DIR\*(C'\fR , +\&\f(CW\*(C`I_SYS_FILE\*(C'\fR , \f(CW\*(C`I_SYS_NDIR\*(C'\fR , \f(CW\*(C`I_SYS_STATFS\*(C'\fR +, \f(CW\*(C`LSEEKSIZE\*(C'\fR , \f(CW\*(C`RD_NODATA\*(C'\fR , +\&\f(CW\*(C`READDIR64_R_PROTO\*(C'\fR , \f(CW\*(C`STDCHAR\*(C'\fR , +\&\f(CW\*(C`STDIO_CNT_LVALUE\*(C'\fR , \f(CW\*(C`STDIO_PTR_LVAL_NOCHANGE_CNT\*(C'\fR +, \f(CW\*(C`STDIO_PTR_LVAL_SETS_CNT\*(C'\fR +, \f(CW\*(C`STDIO_PTR_LVALUE\*(C'\fR , +\&\f(CW\*(C`STDIO_STREAM_ARRAY\*(C'\fR , \f(CW\*(C`ST_INO_SIGN\*(C'\fR , +\&\f(CW\*(C`ST_INO_SIZE\*(C'\fR , \f(CW\*(C`VAL_EAGAIN\*(C'\fR , +\&\f(CW\*(C`VAL_O_NONBLOCK\*(C'\fR , \f(CW\*(C`VOID_CLOSEDIR\*(C'\fR +.IX Xref "DIRNAMLEN DOSUID EOF_NONBLOCK FCNTL_CAN_LOCK FFLUSH_ALL FFLUSH_NULL FILE_base FILE_bufsiz FILE_cnt FILE_ptr FLEXFILENAMES HAS_DIR_DD_FD HAS_DUP2 HAS_DUP3 HAS_FAST_STDIO HAS_FCHDIR HAS_FCNTL HAS_FDCLOSE HAS_FPATHCONF HAS_FPOS64_T HAS_FSTATFS HAS_FSTATVFS HAS_GETFSSTAT HAS_GETMNT HAS_GETMNTENT HAS_HASMNTOPT HAS_LSEEK_PROTO HAS_MKDIR HAS_OFF64_T HAS_OPENAT HAS_OPEN3 HAS_POLL HAS_READDIR HAS_READDIR64_R HAS_REWINDDIR HAS_RMDIR HAS_SEEKDIR HAS_SELECT HAS_SETVBUF HAS_STDIO_STREAM_ARRAY HAS_STRUCT_FS_DATA HAS_STRUCT_STATFS HAS_STRUCT_STATFS_F_FLAGS HAS_TELLDIR HAS_USTAT I_FCNTL I_SYS_DIR I_SYS_FILE I_SYS_NDIR I_SYS_STATFS LSEEKSIZE RD_NODATA READDIR64_R_PROTO STDCHAR STDIO_CNT_LVALUE STDIO_PTR_LVAL_NOCHANGE_CNT STDIO_PTR_LVAL_SETS_CNT STDIO_PTR_LVALUE STDIO_STREAM_ARRAY ST_INO_SIGN ST_INO_SIZE VAL_EAGAIN VAL_O_NONBLOCK VOID_CLOSEDIR" +.IP "Floating point" 4 +.IX Item "Floating point" +\&\f(CW\*(C`CASTFLAGS\*(C'\fR , \f(CW\*(C`CASTNEGFLOAT\*(C'\fR , +\&\f(CW\*(C`DOUBLE_HAS_INF\*(C'\fR , \f(CW\*(C`DOUBLE_HAS_NAN\*(C'\fR , +\&\f(CW\*(C`DOUBLE_HAS_NEGATIVE_ZERO\*(C'\fR , +\&\f(CW\*(C`DOUBLE_HAS_SUBNORMALS\*(C'\fR , \f(CW\*(C`DOUBLEINFBYTES\*(C'\fR +, \f(CW\*(C`DOUBLEKIND\*(C'\fR , \f(CW\*(C`DOUBLEMANTBITS\*(C'\fR +, \f(CW\*(C`DOUBLENANBYTES\*(C'\fR , \f(CW\*(C`DOUBLESIZE\*(C'\fR +, \f(CW\*(C`DOUBLE_STYLE_CRAY\*(C'\fR , +\&\f(CW\*(C`DOUBLE_STYLE_IBM\*(C'\fR , \f(CW\*(C`DOUBLE_STYLE_IEEE\*(C'\fR +, \f(CW\*(C`DOUBLE_STYLE_VAX\*(C'\fR , \f(CW\*(C`HAS_ATOLF\*(C'\fR +, \f(CW\*(C`HAS_CLASS\*(C'\fR , \f(CW\*(C`HAS_FINITE\*(C'\fR , +\&\f(CW\*(C`HAS_FINITEL\*(C'\fR , \f(CW\*(C`HAS_FPCLASS\*(C'\fR , +\&\f(CW\*(C`HAS_FP_CLASS\*(C'\fR , \f(CW\*(C`HAS_FPCLASSIFY\*(C'\fR , +\&\f(CW\*(C`HAS_FP_CLASSIFY\*(C'\fR , \f(CW\*(C`HAS_FPCLASSL\*(C'\fR , +\&\f(CW\*(C`HAS_FP_CLASSL\*(C'\fR , \f(CW\*(C`HAS_FPGETROUND\*(C'\fR , +\&\f(CW\*(C`HAS_FREXPL\*(C'\fR , \f(CW\*(C`HAS_ILOGB\*(C'\fR , \f(CW\*(C`HAS_ISFINITE\*(C'\fR +, \f(CW\*(C`HAS_ISFINITEL\*(C'\fR , \f(CW\*(C`HAS_ISINF\*(C'\fR +, \f(CW\*(C`HAS_ISINFL\*(C'\fR , \f(CW\*(C`HAS_ISNAN\*(C'\fR , +\&\f(CW\*(C`HAS_ISNANL\*(C'\fR , \f(CW\*(C`HAS_ISNORMAL\*(C'\fR , \f(CW\*(C`HAS_J0L\*(C'\fR +, \f(CW\*(C`HAS_J0\*(C'\fR , \f(CW\*(C`HAS_LDBL_DIG\*(C'\fR , +\&\f(CW\*(C`HAS_LDEXPL\*(C'\fR , \f(CW\*(C`HAS_LLRINT\*(C'\fR , \f(CW\*(C`HAS_LLRINTL\*(C'\fR +, \f(CW\*(C`HAS_LLROUNDL\*(C'\fR , \f(CW\*(C`HAS_LONG_DOUBLE\*(C'\fR +, \f(CW\*(C`HAS_LRINT\*(C'\fR , \f(CW\*(C`HAS_LRINTL\*(C'\fR , +\&\f(CW\*(C`HAS_LROUNDL\*(C'\fR , \f(CW\*(C`HAS_MODFL\*(C'\fR , \f(CW\*(C`HAS_NAN\*(C'\fR +, \f(CW\*(C`HAS_NEXTTOWARD\*(C'\fR , \f(CW\*(C`HAS_REMAINDER\*(C'\fR +, \f(CW\*(C`HAS_SCALBN\*(C'\fR , \f(CW\*(C`HAS_SIGNBIT\*(C'\fR +, \f(CW\*(C`HAS_SQRTL\*(C'\fR , \f(CW\*(C`HAS_STRTOD_L\*(C'\fR , +\&\f(CW\*(C`HAS_STRTOLD\*(C'\fR , \f(CW\*(C`HAS_STRTOLD_L\*(C'\fR , +\&\f(CW\*(C`HAS_TRUNC\*(C'\fR , \f(CW\*(C`HAS_UNORDERED\*(C'\fR , \f(CW\*(C`I_FENV\*(C'\fR +, \f(CW\*(C`I_QUADMATH\*(C'\fR , \f(CW\*(C`LONGDBLINFBYTES\*(C'\fR +, \f(CW\*(C`LONGDBLMANTBITS\*(C'\fR , +\&\f(CW\*(C`LONGDBLNANBYTES\*(C'\fR , \f(CW\*(C`LONG_DOUBLEKIND\*(C'\fR +, \f(CW\*(C`LONG_DOUBLESIZE\*(C'\fR , +\&\f(CW\*(C`LONG_DOUBLE_STYLE_IEEE\*(C'\fR , +\&\f(CW\*(C`LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE\*(C'\fR +, \f(CW\*(C`LONG_DOUBLE_STYLE_IEEE_EXTENDED\*(C'\fR +, \f(CW\*(C`LONG_DOUBLE_STYLE_IEEE_STD\*(C'\fR +, \f(CW\*(C`LONG_DOUBLE_STYLE_VAX\*(C'\fR +, \f(CW\*(C`NV\*(C'\fR, \f(CW\*(C`NVMANTBITS\*(C'\fR , +\&\f(CW\*(C`NV_OVERFLOWS_INTEGERS_AT\*(C'\fR , \f(CW\*(C`NV_PRESERVES_UV\*(C'\fR +, \f(CW\*(C`NV_PRESERVES_UV_BITS\*(C'\fR , +\&\f(CW\*(C`NVSIZE\*(C'\fR , \f(CW\*(C`NVTYPE\*(C'\fR , \f(CW\*(C`NV_ZERO_IS_ALLBITS_ZERO\*(C'\fR +.IX Xref "CASTFLAGS CASTNEGFLOAT DOUBLE_HAS_INF DOUBLE_HAS_NAN DOUBLE_HAS_NEGATIVE_ZERO DOUBLE_HAS_SUBNORMALS DOUBLEINFBYTES DOUBLEKIND DOUBLEMANTBITS DOUBLENANBYTES DOUBLESIZE DOUBLE_STYLE_CRAY DOUBLE_STYLE_IBM DOUBLE_STYLE_IEEE DOUBLE_STYLE_VAX HAS_ATOLF HAS_CLASS HAS_FINITE HAS_FINITEL HAS_FPCLASS HAS_FP_CLASS HAS_FPCLASSIFY HAS_FP_CLASSIFY HAS_FPCLASSL HAS_FP_CLASSL HAS_FPGETROUND HAS_FREXPL HAS_ILOGB HAS_ISFINITE HAS_ISFINITEL HAS_ISINF HAS_ISINFL HAS_ISNAN HAS_ISNANL HAS_ISNORMAL HAS_J0L HAS_J0 HAS_LDBL_DIG HAS_LDEXPL HAS_LLRINT HAS_LLRINTL HAS_LLROUNDL HAS_LONG_DOUBLE HAS_LRINT HAS_LRINTL HAS_LROUNDL HAS_MODFL HAS_NAN HAS_NEXTTOWARD HAS_REMAINDER HAS_SCALBN HAS_SIGNBIT HAS_SQRTL HAS_STRTOD_L HAS_STRTOLD HAS_STRTOLD_L HAS_TRUNC HAS_UNORDERED I_FENV I_QUADMATH LONGDBLINFBYTES LONGDBLMANTBITS LONGDBLNANBYTES LONG_DOUBLEKIND LONG_DOUBLESIZE LONG_DOUBLE_STYLE_IEEE LONG_DOUBLE_STYLE_IEEE_DOUBLEDOUBLE LONG_DOUBLE_STYLE_IEEE_EXTENDED LONG_DOUBLE_STYLE_IEEE_STD LONG_DOUBLE_STYLE_VAX NVMANTBITS NV_OVERFLOWS_INTEGERS_AT NV_PRESERVES_UV NV_PRESERVES_UV_BITS NVSIZE NVTYPE NV_ZERO_IS_ALLBITS_ZERO" +.IP "General Configuration" 4 +.IX Xref "PERL_GCC_BRACE_GROUPS_FORBIDDEN" +.IX Item "General Configuration" +\&\f(CW\*(C`ASCIIish\*(C'\fR , \f(CW\*(C`BYTEORDER\*(C'\fR , \f(CW\*(C`CHARBITS\*(C'\fR +, \f(CW\*(C`DB_VERSION_MAJOR_CFG\*(C'\fR , +\&\f(CW\*(C`DB_VERSION_MINOR_CFG\*(C'\fR , \f(CW\*(C`DB_VERSION_PATCH_CFG\*(C'\fR +, \f(CW\*(C`DEFAULT_INC_EXCLUDES_DOT\*(C'\fR +, \f(CW\*(C`DLSYM_NEEDS_UNDERSCORE\*(C'\fR +, \f(CW\*(C`EBCDIC\*(C'\fR , \f(CW\*(C`HAS_CSH\*(C'\fR , +\&\f(CW\*(C`HAS_GETHOSTNAME\*(C'\fR , \f(CW\*(C`HAS_GNULIBC\*(C'\fR , +\&\f(CW\*(C`HAS_LGAMMA\*(C'\fR , \f(CW\*(C`HAS_LGAMMA_R\*(C'\fR , +\&\f(CW\*(C`HAS_NON_INT_BITFIELDS\*(C'\fR , \f(CW\*(C`HAS_PRCTL_SET_NAME\*(C'\fR +, \f(CW\*(C`HAS_PROCSELFEXE\*(C'\fR , +\&\f(CW\*(C`HAS_PSEUDOFORK\*(C'\fR , \f(CW\*(C`HAS_REGCOMP\*(C'\fR , +\&\f(CW\*(C`HAS_SETPGID\*(C'\fR , \f(CW\*(C`HAS_SIGSETJMP\*(C'\fR , +\&\f(CW\*(C`HAS_STRUCT_CMSGHDR\*(C'\fR , \f(CW\*(C`HAS_STRUCT_MSGHDR\*(C'\fR +, \f(CW\*(C`HAS_TGAMMA\*(C'\fR , \f(CW\*(C`HAS_UNAME\*(C'\fR +, \f(CW\*(C`HAS_UNION_SEMUN\*(C'\fR , \f(CW\*(C`I_DIRENT\*(C'\fR +, \f(CW\*(C`I_POLL\*(C'\fR , \f(CW\*(C`I_SYS_RESOURCE\*(C'\fR , +\&\f(CW\*(C`LIBM_LIB_VERSION\*(C'\fR , \f(CW\*(C`NEED_VA_COPY\*(C'\fR, \f(CW\*(C`OSNAME\*(C'\fR +, \f(CW\*(C`OSVERS\*(C'\fR , \f(CW\*(C`PERL_USE_GCC_BRACE_GROUPS\*(C'\fR +, \f(CW\*(C`PHOSTNAME\*(C'\fR , +\&\f(CW\*(C`PROCSELFEXE_PATH\*(C'\fR , \f(CW\*(C`PTRSIZE\*(C'\fR , \f(CW\*(C`RANDBITS\*(C'\fR +, \f(CW\*(C`SELECT_MIN_BITS\*(C'\fR , +\&\f(CW\*(C`SETUID_SCRIPTS_ARE_SECURE_NOW\*(C'\fR , +\&\f(CW\*(C`ST_DEV_SIGN\*(C'\fR , \f(CW\*(C`ST_DEV_SIZE\*(C'\fR +.IX Xref "ASCIIish BYTEORDER CHARBITS DB_VERSION_MAJOR_CFG DB_VERSION_MINOR_CFG DB_VERSION_PATCH_CFG DEFAULT_INC_EXCLUDES_DOT DLSYM_NEEDS_UNDERSCORE EBCDIC HAS_CSH HAS_GETHOSTNAME HAS_GNULIBC HAS_LGAMMA HAS_LGAMMA_R HAS_NON_INT_BITFIELDS HAS_PRCTL_SET_NAME HAS_PROCSELFEXE HAS_PSEUDOFORK HAS_REGCOMP HAS_SETPGID HAS_SIGSETJMP HAS_STRUCT_CMSGHDR HAS_STRUCT_MSGHDR HAS_TGAMMA HAS_UNAME HAS_UNION_SEMUN I_DIRENT I_POLL I_SYS_RESOURCE LIBM_LIB_VERSION OSNAME OSVERS PERL_USE_GCC_BRACE_GROUPS PHOSTNAME PROCSELFEXE_PATH PTRSIZE RANDBITS SELECT_MIN_BITS SETUID_SCRIPTS_ARE_SECURE_NOW ST_DEV_SIGN ST_DEV_SIZE" +.RS 4 +.ie n .IP "List of capability ""HAS_\fIfoo\fR"" symbols" 4 +.el .IP "List of capability \f(CWHAS_\fR\f(CIfoo\fR\f(CW\fR symbols" 4 +.IX Item "List of capability HAS_foo symbols" +.PD 0 +.ie n .IP "List of ""#include"" needed symbols" 4 +.el .IP "List of \f(CW#include\fR needed symbols" 4 +.IX Item "List of #include needed symbols" +.RE +.RS 4 +.RE +.IP "Global Variables" 4 +.IX Item "Global Variables" +.PD +\&\f(CW\*(C`PL_check\*(C'\fR , \f(CW\*(C`PL_infix_plugin\*(C'\fR , +\&\f(CW\*(C`PL_keyword_plugin\*(C'\fR , \f(CW\*(C`PL_phase\*(C'\fR +.IX Xref "PL_check PL_infix_plugin PL_keyword_plugin PL_phase" +.IP "GV Handling and Stashes" 4 +.IX Xref "GV GV_ADD GV_ADDMG GV_ADDMULTI GV_ADDWARN GV_NOADD_NOINIT GV_ NOEXPAND GV_NOINIT GV_NOTQUAL GV_NO_SVGMAGIC GV_SUPER SVf_UTF8" +.IX Item "GV Handling and Stashes" +\&\f(CW\*(C`amagic_call\*(C'\fR , \f(CW\*(C`AMGf_noleft\*(C'\fR, \f(CW\*(C`AMGf_noright\*(C'\fR, +\&\f(CW\*(C`AMGf_unary\*(C'\fR, \f(CW\*(C`AMGf_assign\*(C'\fR, \f(CW\*(C`amagic_deref_call\*(C'\fR , +\&\f(CW\*(C`gv_add_by_type\*(C'\fR , \f(CW\*(C`Gv_AMupdate\*(C'\fR , 1 on +success and there is some overload, 0 if there is no overload, \-1 if some +error occurred and it couldn't croak (because \f(CW\*(C`destructing\*(C'\fR is true), +\&\f(CW\*(C`gv_autoload_pv\*(C'\fR, \f(CW\*(C`gv_autoload_pvn\*(C'\fR, \f(CW\*(C`gv_autoload_sv\*(C'\fR +, \f(CW\*(C`gv_autoload4\*(C'\fR +, \f(CW\*(C`GvAV\*(C'\fR , \f(CW\*(C`gv_AVadd\*(C'\fR, \f(CW\*(C`gv_HVadd\*(C'\fR, \f(CW\*(C`gv_IOadd\*(C'\fR, +\&\f(CW\*(C`gv_SVadd\*(C'\fR , \f(CW\*(C`gv_const_sv\*(C'\fR +, \f(CW\*(C`GvCV\*(C'\fR , \f(CW\*(C`gv_efullname3\*(C'\fR, \f(CW\*(C`gv_efullname4\*(C'\fR, +\&\f(CW\*(C`gv_fullname3\*(C'\fR, \f(CW\*(C`gv_fullname4\*(C'\fR +, +\&\f(CW\*(C`gv_fetchfile\*(C'\fR, \f(CW\*(C`gv_fetchfile_flags\*(C'\fR +, \f(CW\*(C`gv_fetchmeth\*(C'\fR, \f(CW\*(C`gv_fetchmeth_pv\*(C'\fR, +\&\f(CW\*(C`gv_fetchmeth_pvn\*(C'\fR, \f(CW\*(C`gv_fetchmeth_sv\*(C'\fR +, +\&\f(CW\*(C`gv_fetchmeth_autoload\*(C'\fR , \f(CW\*(C`gv_fetchmethod\*(C'\fR +, \f(CW\*(C`gv_fetchmethod_autoload\*(C'\fR , +\&\f(CW\*(C`gv_fetchmeth_pv_autoload\*(C'\fR , +\&\f(CW\*(C`gv_fetchmeth_pvn_autoload\*(C'\fR , +\&\f(CW\*(C`gv_fetchmeth_sv_autoload\*(C'\fR , \f(CW\*(C`gv_fetchpv\*(C'\fR, +\&\f(CW\*(C`gv_fetchpvn\*(C'\fR, \f(CW\*(C`gv_fetchpvn_flags\*(C'\fR, \f(CW\*(C`gv_fetchpvs\*(C'\fR, \f(CW\*(C`gv_fetchsv\*(C'\fR, +\&\f(CW\*(C`gv_fetchsv_nomg\*(C'\fR +X +<gv_fetchsv_nomg>, \f(CW\*(C`GvHV\*(C'\fR , \f(CW\*(C`gv_init\*(C'\fR , \f(CW\*(C`gv_init_pv\*(C'\fR +, \f(CW\*(C`gv_init_pvn\*(C'\fR , \f(CW\*(C`gv_init_sv\*(C'\fR , +\&\f(CW\*(C`gv_name_set\*(C'\fR , \f(CW\*(C`gv_stashpv\*(C'\fR , \f(CW\*(C`gv_stashpvn\*(C'\fR +, \f(CW\*(C`gv_stashpvs\*(C'\fR , \f(CW\*(C`gv_stashsv\*(C'\fR , +\&\f(CW\*(C`GvSV\*(C'\fR , \f(CW\*(C`GvSVn\*(C'\fR , \f(CW\*(C`newGVgen\*(C'\fR, \f(CW\*(C`newGVgen_flags\*(C'\fR +, \f(CW\*(C`PL_curstash\*(C'\fR , \f(CW\*(C`PL_defgv\*(C'\fR +, \f(CW\*(C`PL_defoutgv\*(C'\fR , \f(CW\*(C`PL_defstash\*(C'\fR, \f(CW\*(C`save_gp\*(C'\fR +, \f(CW\*(C`setdefout\*(C'\fR +.IX Xref "amagic_call amagic_deref_call gv_add_by_type Gv_AMupdate gv_autoload_pv gv_autoload_pvn gv_autoload_sv gv_autoload4 GvAV gv_AVadd gv_HVadd gv_IOadd gv_SVadd gv_const_sv GvCV gv_efullname3 gv_efullname4 gv_fullname3 gv_fullname4 gv_fetchfile gv_fetchfile_flags gv_fetchmeth gv_fetchmeth_pv gv_fetchmeth_pvn gv_fetchmeth_sv gv_fetchmeth_autoload gv_fetchmethod gv_fetchmethod_autoload gv_fetchmeth_pv_autoload gv_fetchmeth_pvn_autoload gv_fetchmeth_sv_autoload gv_fetchpv gv_fetchpvn gv_fetchpvn_flags gv_fetchpvs gv_fetchsv GvHV gv_init gv_init_pv gv_init_pvn gv_init_sv gv_name_set gv_stashpv gv_stashpvn gv_stashpvs gv_stashsv GvSV GvSVn newGVgen newGVgen_flags PL_curstash PL_defgv PL_defoutgv save_gp setdefout" +.IP "Hook manipulation" 4 +.IX Item "Hook manipulation" +\&\f(CW\*(C`rcpv_copy\*(C'\fR , \f(CW\*(C`rcpv_free\*(C'\fR , \f(CW\*(C`rcpv_new\*(C'\fR +, \f(CW\*(C`wrap_op_checker\*(C'\fR +.IX Xref "rcpv_copy rcpv_free rcpv_new wrap_op_checker" +.IP "HV Handling" 4 +.IX Xref "HV_ITERNEXT_WANTPLACEHOLDERS HV_NAME_SETALL HvNAMELEN_get" +.IX Item "HV Handling" +\&\f(CW\*(C`get_hv\*(C'\fR , \f(CW\*(C`HE\*(C'\fR, \f(CW\*(C`HEf_SVKEY\*(C'\fR , \f(CW\*(C`HeHASH\*(C'\fR , +\&\f(CW\*(C`HeKEY\*(C'\fR , \f(CW\*(C`HeKLEN\*(C'\fR , \f(CW\*(C`HePV\*(C'\fR , \f(CW\*(C`HeSVKEY\*(C'\fR +, \f(CW\*(C`HeSVKEY_force\*(C'\fR , \f(CW\*(C`HeSVKEY_set\*(C'\fR +, \f(CW\*(C`HeUTF8\*(C'\fR , \f(CW\*(C`HeVAL\*(C'\fR , \f(CW\*(C`HV\*(C'\fR, \f(CW\*(C`hv_assert\*(C'\fR +, \f(CW\*(C`hv_bucket_ratio\*(C'\fR , \f(CW\*(C`hv_clear\*(C'\fR +, \f(CW\*(C`hv_clear_placeholders\*(C'\fR , +\&\f(CW\*(C`hv_copy_hints_hv\*(C'\fR , \f(CW\*(C`hv_delete\*(C'\fR , +\&\f(CW\*(C`hv_delete_ent\*(C'\fR , \f(CW\*(C`HvENAME\*(C'\fR , \f(CW\*(C`HvENAMELEN\*(C'\fR +, \f(CW\*(C`HvENAMEUTF8\*(C'\fR , \f(CW\*(C`hv_exists\*(C'\fR , +\&\f(CW\*(C`hv_exists_ent\*(C'\fR , \f(CW\*(C`hv_fetch\*(C'\fR , \f(CW\*(C`hv_fetch_ent\*(C'\fR +, \f(CW\*(C`hv_fetchs\*(C'\fR , \f(CW\*(C`HvFILL\*(C'\fR , +\&\f(CW\*(C`HvHasAUX\*(C'\fR , \f(CW\*(C`hv_iterinit\*(C'\fR , \f(CW\*(C`hv_iterkey\*(C'\fR +, \f(CW\*(C`hv_iterkeysv\*(C'\fR , \f(CW\*(C`hv_iternext\*(C'\fR +, \f(CW\*(C`hv_iternext_flags\*(C'\fR , \f(CW\*(C`hv_iternextsv\*(C'\fR +, \f(CW\*(C`hv_iterval\*(C'\fR , \f(CW\*(C`hv_ksplit\*(C'\fR , +\&\f(CW\*(C`hv_magic\*(C'\fR , \f(CW\*(C`HvNAME\*(C'\fR , \f(CW\*(C`HvNAMELEN\*(C'\fR , +\&\f(CW\*(C`hv_name_set\*(C'\fR, \f(CW\*(C`hv_name_sets\*(C'\fR , +\&\f(CW\*(C`HvNAMEUTF8\*(C'\fR , \f(CW\*(C`hv_scalar\*(C'\fR , \f(CW\*(C`hv_store\*(C'\fR, +\&\f(CW\*(C`hv_stores\*(C'\fR , \f(CW\*(C`hv_store_ent\*(C'\fR , +\&\f(CW\*(C`hv_undef\*(C'\fR , \f(CW\*(C`newHV\*(C'\fR , \f(CW\*(C`newHVhv\*(C'\fR , +\&\f(CW\*(C`Nullhv\*(C'\fR , \f(CW\*(C`PERL_HASH\*(C'\fR, \f(CW\*(C`PL_modglobal\*(C'\fR +.IX Xref "get_hv HEf_SVKEY HeHASH HeKEY HeKLEN HePV HeSVKEY HeSVKEY_force HeSVKEY_set HeUTF8 HeVAL hv_assert hv_bucket_ratio hv_clear hv_clear_placeholders hv_copy_hints_hv hv_delete hv_delete_ent HvENAME HvENAMELEN HvENAMEUTF8 hv_exists hv_exists_ent hv_fetch hv_fetch_ent hv_fetchs HvFILL HvHasAUX hv_iterinit hv_iterkey hv_iterkeysv hv_iternext hv_iternext_flags hv_iternextsv hv_iterval hv_ksplit hv_magic HvNAME HvNAMELEN hv_name_set hv_name_sets HvNAMEUTF8 hv_scalar hv_store hv_stores hv_store_ent hv_undef newHV newHVhv Nullhv PL_modglobal" +.IP Input/Output 4 +.IX Item "Input/Output" +\&\f(CW\*(C`do_close\*(C'\fR , \f(CW\*(C`IoDIRP\*(C'\fR, \f(CW\*(C`IOf_FLUSH\*(C'\fR, \f(CW\*(C`IoFLAGS\*(C'\fR, +\&\f(CW\*(C`IOf_UNTAINT\*(C'\fR, \f(CW\*(C`IoIFP\*(C'\fR, \f(CW\*(C`IoOFP\*(C'\fR, \f(CW\*(C`IoTYPE\*(C'\fR, \f(CW\*(C`my_chsize\*(C'\fR , +\&\f(CW\*(C`my_dirfd\*(C'\fR , \f(CW\*(C`my_pclose\*(C'\fR , \f(CW\*(C`my_popen\*(C'\fR +, \f(CW\*(C`newIO\*(C'\fR , \f(CW\*(C`PERL_FLUSHALL_FOR_CHILD\*(C'\fR +, \f(CW\*(C`PerlIO_apply_layers\*(C'\fR, \f(CW\*(C`PerlIO_binmode\*(C'\fR, +\&\f(CW\*(C`PerlIO_canset_cnt\*(C'\fR, \f(CW\*(C`PerlIO_clearerr\*(C'\fR, \f(CW\*(C`PerlIO_close\*(C'\fR, \f(CW\*(C`PerlIO_debug\*(C'\fR, +\&\f(CW\*(C`PerlIO_eof\*(C'\fR, \f(CW\*(C`PerlIO_error\*(C'\fR, \f(CW\*(C`PerlIO_exportFILE\*(C'\fR, \f(CW\*(C`PerlIO_fast_gets\*(C'\fR, +\&\f(CW\*(C`PerlIO_fdopen\*(C'\fR, \f(CW\*(C`PerlIO_fileno\*(C'\fR, \f(CW\*(C`PerlIO_fill\*(C'\fR, \f(CW\*(C`PerlIO_findFILE\*(C'\fR, +\&\f(CW\*(C`PerlIO_flush\*(C'\fR, \f(CW\*(C`PerlIO_get_base\*(C'\fR, \f(CW\*(C`PerlIO_get_bufsiz\*(C'\fR, +\&\f(CW\*(C`PerlIO_get_cnt\*(C'\fR, \f(CW\*(C`PerlIO_get_ptr\*(C'\fR, \f(CW\*(C`PerlIO_getc\*(C'\fR, \f(CW\*(C`PerlIO_getpos\*(C'\fR, +\&\f(CW\*(C`PerlIO_has_base\*(C'\fR, \f(CW\*(C`PerlIO_has_cntptr\*(C'\fR, \f(CW\*(C`PerlIO_importFILE\*(C'\fR, +\&\f(CW\*(C`PerlIO_open\*(C'\fR, \f(CW\*(C`PerlIO_printf\*(C'\fR, \f(CW\*(C`PerlIO_putc\*(C'\fR, \f(CW\*(C`PerlIO_puts\*(C'\fR, +\&\f(CW\*(C`PerlIO_read\*(C'\fR, \f(CW\*(C`PerlIO_releaseFILE\*(C'\fR, \f(CW\*(C`PerlIO_reopen\*(C'\fR, \f(CW\*(C`PerlIO_rewind\*(C'\fR, +\&\f(CW\*(C`PerlIO_seek\*(C'\fR, \f(CW\*(C`PerlIO_set_cnt\*(C'\fR, \f(CW\*(C`PerlIO_set_ptrcnt\*(C'\fR, +\&\f(CW\*(C`PerlIO_setlinebuf\*(C'\fR, \f(CW\*(C`PerlIO_setpos\*(C'\fR, \f(CW\*(C`PerlIO_stderr\*(C'\fR, \f(CW\*(C`PerlIO_stdin\*(C'\fR, +\&\f(CW\*(C`PerlIO_stdout\*(C'\fR, \f(CW\*(C`PerlIO_stdoutf\*(C'\fR, \f(CW\*(C`PerlIO_tell\*(C'\fR, \f(CW\*(C`PerlIO_ungetc\*(C'\fR, +\&\f(CW\*(C`PerlIO_unread\*(C'\fR, \f(CW\*(C`PerlIO_vprintf\*(C'\fR, \f(CW\*(C`PerlIO_write\*(C'\fR, \f(CW\*(C`PERLIO_F_APPEND\*(C'\fR, +\&\f(CW\*(C`PERLIO_F_CANREAD\*(C'\fR, \f(CW\*(C`PERLIO_F_CANWRITE\*(C'\fR, \f(CW\*(C`PERLIO_F_CRLF\*(C'\fR, +\&\f(CW\*(C`PERLIO_F_EOF\*(C'\fR, \f(CW\*(C`PERLIO_F_ERROR\*(C'\fR, \f(CW\*(C`PERLIO_F_FASTGETS\*(C'\fR, +\&\f(CW\*(C`PERLIO_F_LINEBUF\*(C'\fR, \f(CW\*(C`PERLIO_F_OPEN\*(C'\fR, \f(CW\*(C`PERLIO_F_RDBUF\*(C'\fR, \f(CW\*(C`PERLIO_F_TEMP\*(C'\fR, +\&\f(CW\*(C`PERLIO_F_TRUNCATE\*(C'\fR, \f(CW\*(C`PERLIO_F_UNBUF\*(C'\fR, \f(CW\*(C`PERLIO_F_UTF8\*(C'\fR, +\&\f(CW\*(C`PERLIO_F_WRBUF\*(C'\fR, \f(CW\*(C`PERLIO_FUNCS_CAST\*(C'\fR , +\&\f(CW\*(C`PERLIO_FUNCS_DECL\*(C'\fR , \f(CW\*(C`PERLIO_K_BUFFERED\*(C'\fR, +\&\f(CW\*(C`PERLIO_K_CANCRLF\*(C'\fR, \f(CW\*(C`PERLIO_K_FASTGETS\*(C'\fR, \f(CW\*(C`PERLIO_K_MULTIARG\*(C'\fR, +\&\f(CW\*(C`PERLIO_K_RAW\*(C'\fR, \f(CW\*(C`PERLIO_NOT_STDIO\*(C'\fR, \f(CW\*(C`PL_maxsysfd\*(C'\fR, \f(CW\*(C`repeatcpy\*(C'\fR +, \f(CW\*(C`USE_STDIO\*(C'\fR +.IX Xref "do_close my_chsize my_dirfd my_pclose my_popen newIO PERL_FLUSHALL_FOR_CHILD PERLIO_FUNCS_CAST PERLIO_FUNCS_DECL repeatcpy" +.IP Integer 4 +.IX Item "Integer" +\&\f(CW\*(C`CASTI32\*(C'\fR , \f(CW\*(C`HAS_INT64_T\*(C'\fR , \f(CW\*(C`HAS_LONG_LONG\*(C'\fR +, \f(CW\*(C`HAS_QUAD\*(C'\fR , \f(CW\*(C`I32df\*(C'\fR , \f(CW\*(C`INT16_C\*(C'\fR, +\&\f(CW\*(C`INT32_C\*(C'\fR, \f(CW\*(C`INT64_C\*(C'\fR , \f(CW\*(C`INTMAX_C\*(C'\fR +, \f(CW\*(C`INTSIZE\*(C'\fR , \f(CW\*(C`I8SIZE\*(C'\fR , \f(CW\*(C`I16SIZE\*(C'\fR +, \f(CW\*(C`I32SIZE\*(C'\fR , \f(CW\*(C`I64SIZE\*(C'\fR , \f(CW\*(C`I8TYPE\*(C'\fR +, \f(CW\*(C`I16TYPE\*(C'\fR , \f(CW\*(C`I32TYPE\*(C'\fR , \f(CW\*(C`I64TYPE\*(C'\fR +, \f(CW\*(C`IV\*(C'\fR, \f(CW\*(C`I8\*(C'\fR, \f(CW\*(C`I16\*(C'\fR, \f(CW\*(C`I32\*(C'\fR, \f(CW\*(C`I64\*(C'\fR, \f(CW\*(C`IV_MAX\*(C'\fR , +\&\f(CW\*(C`IV_MIN\*(C'\fR , \f(CW\*(C`IVSIZE\*(C'\fR , \f(CW\*(C`IVTYPE\*(C'\fR , \f(CW\*(C`line_t\*(C'\fR +, \f(CW\*(C`LONGLONGSIZE\*(C'\fR , \f(CW\*(C`LONGSIZE\*(C'\fR , +\&\f(CW\*(C`memzero\*(C'\fR , \f(CW\*(C`PERL_INT_FAST8_T\*(C'\fR, \f(CW\*(C`PERL_INT_FAST16_T\*(C'\fR, +\&\f(CW\*(C`PERL_UINT_FAST8_T\*(C'\fR, \f(CW\*(C`PERL_UINT_FAST16_T\*(C'\fR +, \f(CW\*(C`PERL_INT_MAX\*(C'\fR, \f(CW\*(C`PERL_INT_MIN\*(C'\fR, \f(CW\*(C`PERL_LONG_MAX\*(C'\fR, +\&\f(CW\*(C`PERL_LONG_MIN\*(C'\fR, \f(CW\*(C`PERL_QUAD_MAX\*(C'\fR, \f(CW\*(C`PERL_QUAD_MIN\*(C'\fR, \f(CW\*(C`PERL_SHORT_MAX\*(C'\fR, +\&\f(CW\*(C`PERL_SHORT_MIN\*(C'\fR, \f(CW\*(C`PERL_UCHAR_MAX\*(C'\fR, \f(CW\*(C`PERL_UCHAR_MIN\*(C'\fR, \f(CW\*(C`PERL_UINT_MAX\*(C'\fR, +\&\f(CW\*(C`PERL_UINT_MIN\*(C'\fR, \f(CW\*(C`PERL_ULONG_MAX\*(C'\fR, \f(CW\*(C`PERL_ULONG_MIN\*(C'\fR, \f(CW\*(C`PERL_UQUAD_MAX\*(C'\fR, +\&\f(CW\*(C`PERL_UQUAD_MIN\*(C'\fR, \f(CW\*(C`PERL_USHORT_MAX\*(C'\fR, \f(CW\*(C`PERL_USHORT_MIN\*(C'\fR +, +\&\f(CW\*(C`SHORTSIZE\*(C'\fR , \f(CW\*(C`UINT16_C\*(C'\fR, \f(CW\*(C`UINT32_C\*(C'\fR, \f(CW\*(C`UINT64_C\*(C'\fR +, \f(CW\*(C`UINTMAX_C\*(C'\fR , \f(CW\*(C`U32of\*(C'\fR +, \f(CW\*(C`U8SIZE\*(C'\fR , \f(CW\*(C`U16SIZE\*(C'\fR , \f(CW\*(C`U32SIZE\*(C'\fR +, \f(CW\*(C`U64SIZE\*(C'\fR , \f(CW\*(C`U8TYPE\*(C'\fR , \f(CW\*(C`U16TYPE\*(C'\fR +, \f(CW\*(C`U32TYPE\*(C'\fR , \f(CW\*(C`U64TYPE\*(C'\fR , \f(CW\*(C`U32uf\*(C'\fR +, \f(CW\*(C`UV\*(C'\fR, \f(CW\*(C`U8\*(C'\fR, \f(CW\*(C`U16\*(C'\fR, \f(CW\*(C`U32\*(C'\fR, \f(CW\*(C`U64\*(C'\fR, \f(CW\*(C`UV_MAX\*(C'\fR , +\&\f(CW\*(C`UV_MIN\*(C'\fR , \f(CW\*(C`UVSIZE\*(C'\fR , \f(CW\*(C`UVTYPE\*(C'\fR , \f(CW\*(C`U32Xf\*(C'\fR +, \f(CW\*(C`U32xf\*(C'\fR , \f(CW\*(C`WIDEST_UTYPE\*(C'\fR +.IX Xref "CASTI32 HAS_INT64_T HAS_LONG_LONG HAS_QUAD I32df INT16_C INT32_C INT64_C INTMAX_C INTSIZE I8SIZE I16SIZE I32SIZE I64SIZE I8TYPE I16TYPE I32TYPE I64TYPE IV_MAX IV_MIN IVSIZE IVTYPE line_t LONGLONGSIZE LONGSIZE memzero PERL_INT_FAST8_T PERL_INT_FAST16_T PERL_UINT_FAST8_T PERL_UINT_FAST 16_T PERL_INT_MAX PERL_INT_MIN PERL_LONG_MAX PERL_LONG_MIN PERL_QUAD_M AX PERL_QUAD_MIN PERL_SHORT_MAX PERL_SHORT_MIN PERL_UCHAR_MAX PER L_UCHAR_MIN PERL_UINT_MAX PERL_UINT_MIN PERL_ULONG_MAX PERL_ULONG_M IN PERL_UQUAD_MAX PERL_UQUAD_MIN PERL_USHORT_MAX PERL_USHORT_MIN SHORTSIZE UINT16_C UINT32_C UINT64_C UINTMAX_C U32of U8SIZE U16SIZE U32SIZE U64SIZE U8TYPE U16TYPE U32TYPE U64TYPE U32uf UV_MAX UV_MIN UVSIZE UVTYPE U32Xf U32xf WIDEST_UTYPE" +.IP "I/O Formats" 4 +.IX Item "I/O Formats" +\&\f(CW\*(C`HvNAMEf\*(C'\fR, \f(CW\*(C`HvNAMEf_QUOTEDPREFIX\*(C'\fR, \f(CW\*(C`IVdf\*(C'\fR , \f(CW\*(C`NVef\*(C'\fR , +\&\f(CW\*(C`NVff\*(C'\fR , \f(CW\*(C`NVgf\*(C'\fR , \f(CW\*(C`PERL_PRIeldbl\*(C'\fR , +\&\f(CW\*(C`PERL_PRIfldbl\*(C'\fR , \f(CW\*(C`PERL_PRIgldbl\*(C'\fR , +\&\f(CW\*(C`PERL_SCNfldbl\*(C'\fR , \f(CW\*(C`PRINTF_FORMAT_NULL_OK\*(C'\fR +, \f(CW\*(C`SVf\*(C'\fR, \f(CW\*(C`SVfARG\*(C'\fR, \f(CW\*(C`SVf_QUOTEDPREFIX\*(C'\fR, \f(CW\*(C`UTF8f\*(C'\fR, +\&\f(CW\*(C`UTF8fARG\*(C'\fR, \f(CW\*(C`UTF8f_QUOTEDPREFIX\*(C'\fR, \f(CW\*(C`UVf\*(C'\fR , \f(CW\*(C`UVof\*(C'\fR , \f(CW\*(C`UVuf\*(C'\fR +, \f(CW\*(C`UVXf\*(C'\fR , \f(CW\*(C`UVxf\*(C'\fR +.IX Xref "IVdf NVef NVff NVgf PERL_PRIeldbl PERL_PRIfldbl PERL_PRIgldbl PERL_SCNfldbl PRINTF_FORMAT_NULL_OK UVf UVof UVuf UVXf UVxf" +.IP "Lexer interface" 4 +.IX Xref "LEX_KEEP_PREVIOUS LEX_STUFF_UTF8 PARSE_OPTIONAL" +.IX Item "Lexer interface" +\&\f(CW\*(C`BHK\*(C'\fR, \f(CW\*(C`lex_bufutf8\*(C'\fR , \f(CW\*(C`lex_discard_to\*(C'\fR , +\&\f(CW\*(C`lex_grow_linestr\*(C'\fR , \f(CW\*(C`lex_next_chunk\*(C'\fR +, \f(CW\*(C`lex_peek_unichar\*(C'\fR , +\&\f(CW\*(C`lex_read_space\*(C'\fR , \f(CW\*(C`lex_read_to\*(C'\fR , +\&\f(CW\*(C`lex_read_unichar\*(C'\fR , \f(CW\*(C`lex_start\*(C'\fR , +\&\f(CW\*(C`lex_stuff_pv\*(C'\fR , \f(CW\*(C`lex_stuff_pvn\*(C'\fR , +\&\f(CW\*(C`lex_stuff_pvs\*(C'\fR , \f(CW\*(C`lex_stuff_sv\*(C'\fR , +\&\f(CW\*(C`lex_unstuff\*(C'\fR , \f(CW\*(C`parse_arithexpr\*(C'\fR , +\&\f(CW\*(C`parse_barestmt\*(C'\fR , \f(CW\*(C`parse_block\*(C'\fR , +\&\f(CW\*(C`parse_fullexpr\*(C'\fR , \f(CW\*(C`parse_fullstmt\*(C'\fR , +\&\f(CW\*(C`parse_label\*(C'\fR , \f(CW\*(C`parse_listexpr\*(C'\fR , +\&\f(CW\*(C`parse_stmtseq\*(C'\fR , \f(CW\*(C`parse_subsignature\*(C'\fR +, \f(CW\*(C`parse_termexpr\*(C'\fR , \f(CW\*(C`PL_parser\*(C'\fR +, \f(CW\*(C`PL_parser\->bufend\*(C'\fR , +\&\f(CW\*(C`PL_parser\->bufptr\*(C'\fR , +\&\f(CW\*(C`PL_parser\->linestart\*(C'\fR , +\&\f(CW\*(C`PL_parser\->linestr\*(C'\fR , \f(CW\*(C`suspend_compcv\*(C'\fR +, \f(CW\*(C`wrap_infix_plugin\*(C'\fR , +\&\f(CW\*(C`wrap_keyword_plugin\*(C'\fR +.IX Xref "lex_bufutf8 lex_discard_to lex_grow_linestr lex_next_chunk lex_peek_unichar lex_read_space lex_read_to lex_read_unichar lex_start lex_stuff_pv lex_stuff_pvn lex_stuff_pvs lex_stuff_sv lex_unstuff parse_arithexpr parse_barestmt parse_block parse_fullexpr parse_fullstmt parse_label parse_listexpr parse_stmtseq parse_subsignature parse_termexpr PL_parser PL_parser->bufend PL_parser->bufptr PL_parser->linestart PL_parser->linestr suspend_compcv wrap_infix_plugin wrap_keyword_plugin" +.IP Locales 4 +.IX Item "Locales" +\&\f(CW\*(C`DECLARATION_FOR_LC_NUMERIC_MANIPULATION\*(C'\fR +, \f(CW\*(C`foldEQ_locale\*(C'\fR +, \f(CW\*(C`HAS_DUPLOCALE\*(C'\fR , \f(CW\*(C`HAS_FREELOCALE\*(C'\fR +, \f(CW\*(C`HAS_LC_MONETARY_2008\*(C'\fR , +\&\f(CW\*(C`HAS_LOCALECONV\*(C'\fR , \f(CW\*(C`HAS_LOCALECONV_L\*(C'\fR +, \f(CW\*(C`HAS_NEWLOCALE\*(C'\fR , \f(CW\*(C`HAS_NL_LANGINFO\*(C'\fR +, \f(CW\*(C`HAS_NL_LANGINFO_L\*(C'\fR , +\&\f(CW\*(C`HAS_QUERYLOCALE\*(C'\fR , \f(CW\*(C`HAS_SETLOCALE\*(C'\fR , +\&\f(CW\*(C`HAS_SETLOCALE_R\*(C'\fR , \f(CW\*(C`HAS_THREAD_SAFE_NL_LANGINFO_L\*(C'\fR +, \f(CW\*(C`HAS_USELOCALE\*(C'\fR , +\&\f(CW\*(C`I_LANGINFO\*(C'\fR , \f(CW\*(C`I_LOCALE\*(C'\fR , \f(CW\*(C`IN_LOCALE\*(C'\fR +, \f(CW\*(C`IN_LOCALE_COMPILETIME\*(C'\fR , +\&\f(CW\*(C`IN_LOCALE_RUNTIME\*(C'\fR , \f(CW\*(C`I_XLOCALE\*(C'\fR , +\&\f(CW\*(C`NEED_XLOCALE_H\*(C'\fR , \f(CW\*(C`Perl_langinfo\*(C'\fR, \f(CW\*(C`Perl_langinfo8\*(C'\fR +, a, b, c, d, e, \f(CW\*(C`Perl_localeconv\*(C'\fR +, \f(CW\*(C`Perl_setlocale\*(C'\fR , +\&\f(CW\*(C`RESTORE_LC_NUMERIC\*(C'\fR , +\&\f(CW\*(C`SETLOCALE_ACCEPTS_ANY_LOCALE_NAME\*(C'\fR , +\&\f(CW\*(C`STORE_LC_NUMERIC_FORCE_TO_UNDERLYING\*(C'\fR +, \f(CW\*(C`STORE_LC_NUMERIC_SET_TO_NEEDED\*(C'\fR +, \f(CW\*(C`STORE_LC_NUMERIC_SET_TO_NEEDED_IN\*(C'\fR +, \f(CW\*(C`WITH_LC_NUMERIC_SET_TO_NEEDED\*(C'\fR +, \f(CW\*(C`WITH_LC_NUMERIC_SET_TO_NEEDED_IN\*(C'\fR +.IX Xref "DECLARATION_FOR_LC_NUMERIC_MANIPULATION foldEQ_locale HAS_DUPLOCALE HAS_FREELOCALE HAS_LC_MONETARY_2008 HAS_LOCALECONV HAS_LOCALECONV_L HAS_NEWLOCALE HAS_NL_LANGINFO HAS_NL_LANGINFO_L HAS_QUERYLOCALE HAS_SETLOCALE HAS_SETLOCALE_R HAS_THREAD_SAFE_NL_LANGINFO_L HAS_USELOCALE I_LANGINFO I_LOCALE IN_LOCALE IN_LOCALE_COMPILETIME IN_LOCALE_RUNTIME I_XLOCALE NEED_XLOCALE_H Perl_langinfo Perl_langinfo8 Perl_localeconv Perl_setlocale RESTORE_LC_NUMERIC SETLOCALE_ACCEPTS_ANY_LOCALE_NAME STORE_LC_NUMERIC_FORCE_TO_UNDERLYING STORE_LC_NUMERIC_SET_TO_NEEDED STORE_LC_NUMERIC_SET_TO_NEEDED_IN WITH_LC_NUMERIC_SET_TO_NEEDED WITH_LC_NUMERIC_SET_TO_NEEDED_IN" +.IP Magic 4 +.IX Xref "MAGIC" +.IX Item "Magic" +\&\f(CW\*(C`mg_clear\*(C'\fR , \f(CW\*(C`mg_copy\*(C'\fR , \f(CW\*(C`MGf_COPY\*(C'\fR, \f(CW\*(C`MGf_DUP\*(C'\fR, +\&\f(CW\*(C`MGf_LOCAL\*(C'\fR, \f(CW\*(C`mg_find\*(C'\fR , \f(CW\*(C`mg_findext\*(C'\fR , +\&\f(CW\*(C`mg_free\*(C'\fR , \f(CW\*(C`mg_freeext\*(C'\fR , \f(CW\*(C`mg_free_type\*(C'\fR +, \f(CW\*(C`mg_get\*(C'\fR , \f(CW\*(C`mg_magical\*(C'\fR , +\&\f(CW\*(C`mg_set\*(C'\fR , \f(CW\*(C`MGVTBL\*(C'\fR, \f(CW\*(C`PERL_MAGIC_arylen\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_arylen_p\*(C'\fR, \f(CW\*(C`PERL_MAGIC_backref\*(C'\fR, \f(CW\*(C`PERL_MAGIC_bm\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_checkcall\*(C'\fR, \f(CW\*(C`PERL_MAGIC_collxfrm\*(C'\fR, \f(CW\*(C`PERL_MAGIC_dbfile\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_dbline\*(C'\fR, \f(CW\*(C`PERL_MAGIC_debugvar\*(C'\fR, \f(CW\*(C`PERL_MAGIC_defelem\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_destruct\*(C'\fR, \f(CW\*(C`PERL_MAGIC_env\*(C'\fR, \f(CW\*(C`PERL_MAGIC_envelem\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_ext\*(C'\fR, \f(CW\*(C`PERL_MAGIC_extvalue\*(C'\fR, \f(CW\*(C`PERL_MAGIC_fm\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_hints\*(C'\fR, \f(CW\*(C`PERL_MAGIC_hintselem\*(C'\fR, \f(CW\*(C`PERL_MAGIC_hook\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_hookelem\*(C'\fR, \f(CW\*(C`PERL_MAGIC_isa\*(C'\fR, \f(CW\*(C`PERL_MAGIC_isaelem\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_lvref\*(C'\fR, \f(CW\*(C`PERL_MAGIC_nkeys\*(C'\fR, \f(CW\*(C`PERL_MAGIC_nonelem\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_overload_table\*(C'\fR, \f(CW\*(C`PERL_MAGIC_pos\*(C'\fR, \f(CW\*(C`PERL_MAGIC_qr\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_regdata\*(C'\fR, \f(CW\*(C`PERL_MAGIC_regdatum\*(C'\fR, \f(CW\*(C`PERL_MAGIC_regex_global\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_rhash\*(C'\fR, \f(CW\*(C`PERL_MAGIC_shared\*(C'\fR, \f(CW\*(C`PERL_MAGIC_shared_scalar\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_sig\*(C'\fR, \f(CW\*(C`PERL_MAGIC_sigelem\*(C'\fR, \f(CW\*(C`PERL_MAGIC_substr\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_sv\*(C'\fR, \f(CW\*(C`PERL_MAGIC_symtab\*(C'\fR, \f(CW\*(C`PERL_MAGIC_taint\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_tied\*(C'\fR, \f(CW\*(C`PERL_MAGIC_tiedelem\*(C'\fR, \f(CW\*(C`PERL_MAGIC_tiedscalar\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_utf8\*(C'\fR, \f(CW\*(C`PERL_MAGIC_uvar\*(C'\fR, \f(CW\*(C`PERL_MAGIC_uvar_elem\*(C'\fR, +\&\f(CW\*(C`PERL_MAGIC_vec\*(C'\fR, \f(CW\*(C`PERL_MAGIC_vstring\*(C'\fR, \f(CW\*(C`SvTIED_obj\*(C'\fR +.IX Xref "mg_clear mg_copy mg_find mg_findext mg_free mg_freeext mg_free_type mg_get mg_magical mg_set" +.IP "Memory Management" 4 +.IX Item "Memory Management" +\&\f(CW\*(C`dump_mstats\*(C'\fR , \f(CW\*(C`HASATTRIBUTE_MALLOC\*(C'\fR +, \f(CW\*(C`HAS_MALLOC_GOOD_SIZE\*(C'\fR , +\&\f(CW\*(C`HAS_MALLOC_SIZE\*(C'\fR , \f(CW\*(C`I_MALLOCMALLOC\*(C'\fR , +\&\f(CW\*(C`MYMALLOC\*(C'\fR , \f(CW\*(C`Newx\*(C'\fR, \f(CW\*(C`safemalloc\*(C'\fR , +\&\f(CW\*(C`Newxc\*(C'\fR , \f(CW\*(C`Newxz\*(C'\fR, \f(CW\*(C`safecalloc\*(C'\fR , +\&\f(CW\*(C`PERL_MALLOC_WRAP\*(C'\fR , \f(CW\*(C`Renew\*(C'\fR, \f(CW\*(C`saferealloc\*(C'\fR +, \f(CW\*(C`Renewc\*(C'\fR , \f(CW\*(C`Safefree\*(C'\fR , +\&\f(CW\*(C`safesyscalloc\*(C'\fR , \f(CW\*(C`safesysfree\*(C'\fR , +\&\f(CW\*(C`safesysmalloc\*(C'\fR , \f(CW\*(C`safesysrealloc\*(C'\fR +.IX Xref "dump_mstats HASATTRIBUTE_MALLOC HAS_MALLOC_GOOD_SIZE HAS_MALLOC_SIZE I_MALLOCMALLOC MYMALLOC Newx safemalloc Newxc Newxz safecalloc PERL_MALLOC_WRAP Renew saferealloc Renewc Safefree safesyscalloc safesysfree safesysmalloc safesysrealloc" +.IP MRO 4 +.IX Item "MRO" +\&\f(CW\*(C`HvMROMETA\*(C'\fR, \f(CW\*(C`mro_get_from_name\*(C'\fR , +\&\f(CW\*(C`mro_get_linear_isa\*(C'\fR , \f(CW\*(C`MRO_GET_PRIVATE_DATA\*(C'\fR, +\&\f(CW\*(C`mro_method_changed_in\*(C'\fR , \f(CW\*(C`mro_register\*(C'\fR +, \f(CW\*(C`mro_set_mro\*(C'\fR , \f(CW\*(C`mro_set_private_data\*(C'\fR +.IX Xref "mro_get_from_name mro_get_linear_isa mro_method_changed_in mro_register mro_set_mro" +.IP "Multicall Functions" 4 +.IX Item "Multicall Functions" +\&\f(CW\*(C`dMULTICALL\*(C'\fR , \f(CW\*(C`MULTICALL\*(C'\fR , \f(CW\*(C`POP_MULTICALL\*(C'\fR +, \f(CW\*(C`PUSH_MULTICALL\*(C'\fR +.IX Xref "dMULTICALL MULTICALL POP_MULTICALL PUSH_MULTICALL" +.IP "Numeric Functions" 4 +.IX Xref "IS_NUMBER_GREATER_THAN_UV_MAX IS_NUMBER_INFINITY IS_NUMBER_IN_UV IS _NUMBER_NAN IS_NUMBER_NEG IS_NUMBER_NOT_INT PERL_SCAN_ALLOW_UNDERSCOR ES PERL_SCAN_DISALLOW_PREFIX PERL_SCAN_GREATER_THAN_UV_MAX PERL_SCAN_ SILENT_ILLDIGIT PERL_SCAN_TRAILING" +.IX Item "Numeric Functions" +\&\f(CW\*(C`Atol\*(C'\fR, \f(CW\*(C`Atoul\*(C'\fR, \f(CW\*(C`Drand01\*(C'\fR , \f(CW\*(C`Gconvert\*(C'\fR , +\&\f(CW\*(C`grok_atoUV\*(C'\fR , \f(CW\*(C`grok_bin\*(C'\fR , \f(CW\*(C`grok_hex\*(C'\fR +, \f(CW\*(C`grok_infnan\*(C'\fR , \f(CW\*(C`grok_number\*(C'\fR , +\&\f(CW\*(C`grok_number_flags\*(C'\fR , \f(CW\*(C`GROK_NUMERIC_RADIX\*(C'\fR +, \f(CW\*(C`grok_numeric_radix\*(C'\fR , +\&\f(CW\*(C`grok_oct\*(C'\fR , \f(CW\*(C`isinfnan\*(C'\fR , \f(CW\*(C`my_atof\*(C'\fR , +\&\f(CW\*(C`my_strtod\*(C'\fR , \f(CW\*(C`PERL_ABS\*(C'\fR , \f(CW\*(C`Perl_acos\*(C'\fR, +\&\f(CW\*(C`Perl_asin\*(C'\fR, \f(CW\*(C`Perl_atan\*(C'\fR, \f(CW\*(C`Perl_atan2\*(C'\fR, \f(CW\*(C`Perl_ceil\*(C'\fR, \f(CW\*(C`Perl_cos\*(C'\fR, +\&\f(CW\*(C`Perl_cosh\*(C'\fR, \f(CW\*(C`Perl_exp\*(C'\fR, \f(CW\*(C`Perl_floor\*(C'\fR, \f(CW\*(C`Perl_fmod\*(C'\fR, \f(CW\*(C`Perl_frexp\*(C'\fR, +\&\f(CW\*(C`Perl_isfinite\*(C'\fR, \f(CW\*(C`Perl_isinf\*(C'\fR, \f(CW\*(C`Perl_isnan\*(C'\fR, \f(CW\*(C`Perl_ldexp\*(C'\fR, \f(CW\*(C`Perl_log\*(C'\fR, +\&\f(CW\*(C`Perl_log10\*(C'\fR, \f(CW\*(C`Perl_modf\*(C'\fR, \f(CW\*(C`Perl_pow\*(C'\fR, \f(CW\*(C`Perl_sin\*(C'\fR, \f(CW\*(C`Perl_sinh\*(C'\fR, +\&\f(CW\*(C`Perl_sqrt\*(C'\fR, \f(CW\*(C`Perl_tan\*(C'\fR, \f(CW\*(C`Perl_tanh\*(C'\fR +X +<Perl_isinf>X +<Perl_pow>, +\&\f(CW\*(C`Perl_signbit\*(C'\fR , \f(CW\*(C`PL_hexdigit\*(C'\fR , +\&\f(CW\*(C`READ_XDIGIT\*(C'\fR , \f(CW\*(C`scan_bin\*(C'\fR , \f(CW\*(C`scan_hex\*(C'\fR +, \f(CW\*(C`scan_oct\*(C'\fR , \f(CW\*(C`seedDrand01\*(C'\fR , +\&\f(CW\*(C`Strtod\*(C'\fR , \f(CW\*(C`Strtol\*(C'\fR , \f(CW\*(C`Strtoul\*(C'\fR +.IX Xref "Drand01 Gconvert grok_atoUV grok_bin grok_hex grok_infnan grok_number grok_number_flags GROK_NUMERIC_RADIX grok_numeric_radix grok_oct isinfnan my_atof my_strtod PERL_ABS Perl_acos Perl_asin Perl_atan Perl_atan2 Perl_ceil Perl_cos P erl_cosh Perl_exp Perl_floor Perl_fmod Perl_frexp Perl_isfinite Perl_isnan Perl_ldexp Perl_log Perl_log10 Perl_modf Perl_sin Perl_sinh Perl_sqrt Perl_tan Perl_tanh Perl_signbit PL_hexdigit READ_XDIGIT scan_bin scan_hex scan_oct seedDrand01 Strtod Strtol Strtoul" +.IP Optrees 4 +.IX Xref "CALL_CHECKER_REQUIRE_GV OPf_KIDS OPpEARLY_CV OPpENTERSUB_AMPER RV 2CVOPCV_MARK_EARLY RV2CVOPCV_RETURN_NAME_GV" +.IX Item "Optrees" +\&\f(CW\*(C`alloccopstash\*(C'\fR , \f(CW\*(C`BINOP\*(C'\fR, \f(CW\*(C`block_end\*(C'\fR , +\&\f(CW\*(C`block_start\*(C'\fR , \f(CW\*(C`ck_entersub_args_list\*(C'\fR +, \f(CW\*(C`ck_entersub_args_proto\*(C'\fR +, \f(CW\*(C`ck_entersub_args_proto_or_list\*(C'\fR +, \f(CW\*(C`cv_const_sv\*(C'\fR , +\&\f(CW\*(C`cv_get_call_checker\*(C'\fR , \f(CW\*(C`cv_get_call_checker_flags\*(C'\fR +, \f(CW\*(C`cv_set_call_checker\*(C'\fR +, \f(CW\*(C`cv_set_call_checker_flags\*(C'\fR +, \f(CW\*(C`finalize_optree\*(C'\fR , +\&\f(CW\*(C`forbid_outofblock_ops\*(C'\fR , \f(CW\*(C`LINKLIST\*(C'\fR , +\&\f(CW\*(C`LISTOP\*(C'\fR, \f(CW\*(C`LOGOP\*(C'\fR, \f(CW\*(C`LOOP\*(C'\fR, \f(CW\*(C`newARGDEFELEMOP\*(C'\fR , +\&\f(CW\*(C`newASSIGNOP\*(C'\fR , \f(CW\*(C`newATTRSUB\*(C'\fR , \f(CW\*(C`newBINOP\*(C'\fR +, \f(CW\*(C`newCONDOP\*(C'\fR , \f(CW\*(C`newCONSTSUB\*(C'\fR , +\&\f(CW\*(C`newCONSTSUB_flags\*(C'\fR , \f(CW\*(C`newDEFEROP\*(C'\fR , +\&\f(CW\*(C`newDEFSVOP\*(C'\fR , \f(CW\*(C`newFOROP\*(C'\fR , \f(CW\*(C`newGIVENOP\*(C'\fR +, \f(CW\*(C`newGVOP\*(C'\fR , \f(CW\*(C`newLISTOP\*(C'\fR , +\&\f(CW\*(C`newLOGOP\*(C'\fR , \f(CW\*(C`newLOOPEX\*(C'\fR , \f(CW\*(C`newLOOPOP\*(C'\fR +, \f(CW\*(C`newMETHOP\*(C'\fR , \f(CW\*(C`newMETHOP_named\*(C'\fR +, \f(CW\*(C`newNULLLIST\*(C'\fR , \f(CW\*(C`newOP\*(C'\fR , +\&\f(CW\*(C`newPADOP\*(C'\fR , \f(CW\*(C`newPMOP\*(C'\fR , \f(CW\*(C`newPVOP\*(C'\fR , +\&\f(CW\*(C`newRANGE\*(C'\fR , \f(CW\*(C`newSLICEOP\*(C'\fR , \f(CW\*(C`newSTATEOP\*(C'\fR +, \f(CW\*(C`newSUB\*(C'\fR , \f(CW\*(C`newSVOP\*(C'\fR , \f(CW\*(C`newTRYCATCHOP\*(C'\fR +, \f(CW\*(C`newUNOP\*(C'\fR , \f(CW\*(C`newUNOP_AUX\*(C'\fR , +\&\f(CW\*(C`newWHENOP\*(C'\fR , \f(CW\*(C`newWHILEOP\*(C'\fR , \f(CW\*(C`newXS\*(C'\fR , +\&\f(CW\*(C`OA_BASEOP\*(C'\fR, \f(CW\*(C`OA_BINOP\*(C'\fR, \f(CW\*(C`OA_COP\*(C'\fR, \f(CW\*(C`OA_LISTOP\*(C'\fR, \f(CW\*(C`OA_LOGOP\*(C'\fR, +\&\f(CW\*(C`OA_LOOP\*(C'\fR, \f(CW\*(C`OA_PADOP\*(C'\fR, \f(CW\*(C`OA_PMOP\*(C'\fR, \f(CW\*(C`OA_PVOP_OR_SVOP\*(C'\fR, \f(CW\*(C`OA_SVOP\*(C'\fR, +\&\f(CW\*(C`OA_UNOP\*(C'\fR, \f(CW\*(C`OP\*(C'\fR, \f(CW\*(C`op_append_elem\*(C'\fR , \f(CW\*(C`op_append_list\*(C'\fR +, \f(CW\*(C`OP_CLASS\*(C'\fR , \f(CW\*(C`op_contextualize\*(C'\fR +, \f(CW\*(C`op_convert_list\*(C'\fR , \f(CW\*(C`OP_DESC\*(C'\fR +, \f(CW\*(C`op_force_list\*(C'\fR , \f(CW\*(C`op_free\*(C'\fR , +\&\f(CW\*(C`OpHAS_SIBLING\*(C'\fR , \f(CW\*(C`OpLASTSIB_set\*(C'\fR , +\&\f(CW\*(C`op_linklist\*(C'\fR , \f(CW\*(C`op_lvalue\*(C'\fR , \f(CW\*(C`OpMAYBESIB_set\*(C'\fR +, \f(CW\*(C`OpMORESIB_set\*(C'\fR , \f(CW\*(C`OP_NAME\*(C'\fR +, \f(CW\*(C`op_null\*(C'\fR , \f(CW\*(C`op_parent\*(C'\fR , +\&\f(CW\*(C`op_prepend_elem\*(C'\fR , \f(CW\*(C`op_scope\*(C'\fR , +\&\f(CW\*(C`OpSIBLING\*(C'\fR , \f(CW\*(C`op_sibling_splice\*(C'\fR , +\&\f(CW\*(C`optimize_optree\*(C'\fR , \f(CW\*(C`OP_TYPE_IS\*(C'\fR , +\&\f(CW\*(C`OP_TYPE_IS_OR_WAS\*(C'\fR , \f(CW\*(C`op_wrap_finally\*(C'\fR +, \f(CW\*(C`peep_t\*(C'\fR, \f(CW\*(C`Perl_cpeep_t\*(C'\fR, \f(CW\*(C`PL_opfreehook\*(C'\fR +, \f(CW\*(C`PL_peepp\*(C'\fR , \f(CW\*(C`PL_rpeepp\*(C'\fR , +\&\f(CW\*(C`PMOP\*(C'\fR, \f(CW\*(C`rv2cv_op_cv\*(C'\fR , \f(CW\*(C`UNOP\*(C'\fR, \f(CW\*(C`XOP\*(C'\fR +.IX Xref "alloccopstash block_end block_start ck_entersub_args_list ck_entersub_args_proto ck_entersub_args_proto_or_list cv_const_sv cv_get_call_checker cv_get_call_checker_flags cv_set_call_checker cv_set_call_checker_flags finalize_optree forbid_outofblock_ops LINKLIST newARGDEFELEMOP newASSIGNOP newATTRSUB newBINOP newCONDOP newCONSTSUB newCONSTSUB_flags newDEFEROP newDEFSVOP newFOROP newGIVENOP newGVOP newLISTOP newLOGOP newLOOPEX newLOOPOP newMETHOP newMETHOP_named newNULLLIST newOP newPADOP newPMOP newPVOP newRANGE newSLICEOP newSTATEOP newSUB newSVOP newTRYCATCHOP newUNOP newUNOP_AUX newWHENOP newWHILEOP newXS op_append_elem op_append_list OP_CLASS op_contextualize op_convert_list OP_DESC op_force_list op_free OpHAS_SIBLING OpLASTSIB_set op_linklist op_lvalue OpMAYBESIB_set OpMORESIB_set OP_NAME op_null op_parent op_prepend_elem op_scope OpSIBLING op_sibling_splice optimize_optree OP_TYPE_IS OP_TYPE_IS_OR_WAS op_wrap_finally PL_opfreehook PL_peepp PL_rpeepp rv2cv_op_cv" +.IP "Pack and Unpack" 4 +.IX Item "Pack and Unpack" +\&\f(CW\*(C`packlist\*(C'\fR , \f(CW\*(C`unpackstring\*(C'\fR +.IX Xref "packlist unpackstring" +.IP "Pad Data Structures" 4 +.IX Xref "SVs_PADSTALE" +.IX Item "Pad Data Structures" +\&\f(CW\*(C`CvPADLIST\*(C'\fR , \f(CW\*(C`pad_add_name_pvs\*(C'\fR , +\&\f(CW\*(C`PadARRAY\*(C'\fR , \f(CW\*(C`pad_findmy_pvs\*(C'\fR , +\&\f(CW\*(C`PadlistARRAY\*(C'\fR , \f(CW\*(C`PadlistMAX\*(C'\fR , +\&\f(CW\*(C`PadlistNAMES\*(C'\fR , \f(CW\*(C`PadlistNAMESARRAY\*(C'\fR , +\&\f(CW\*(C`PadlistNAMESMAX\*(C'\fR , \f(CW\*(C`PadlistREFCNT\*(C'\fR , +\&\f(CW\*(C`PadMAX\*(C'\fR , \f(CW\*(C`PadnameLEN\*(C'\fR , \f(CW\*(C`PadnamelistARRAY\*(C'\fR +, \f(CW\*(C`PadnamelistMAX\*(C'\fR , +\&\f(CW\*(C`PadnamelistREFCNT\*(C'\fR , \f(CW\*(C`PadnamelistREFCNT_dec\*(C'\fR +, \f(CW\*(C`PadnamePV\*(C'\fR , \f(CW\*(C`PadnameREFCNT\*(C'\fR +, \f(CW\*(C`PadnameREFCNT_dec\*(C'\fR , +\&\f(CW\*(C`PadnameREFCNT_inc\*(C'\fR , \f(CW\*(C`PadnameSV\*(C'\fR , +\&\f(CW\*(C`PadnameUTF8\*(C'\fR , \f(CW\*(C`pad_new\*(C'\fR , \f(CW\*(C`PL_comppad\*(C'\fR +, \f(CW\*(C`PL_comppad_name\*(C'\fR , \f(CW\*(C`PL_curpad\*(C'\fR +, \f(CW\*(C`SVs_PADMY\*(C'\fR, \f(CW\*(C`SVs_PADTMP\*(C'\fR +.IX Xref "CvPADLIST pad_add_name_pvs PadARRAY pad_findmy_pvs PadlistARRAY PadlistMAX PadlistNAMES PadlistNAMESARRAY PadlistNAMESMAX PadlistREFCNT PadMAX PadnameLEN PadnamelistARRAY PadnamelistMAX PadnamelistREFCNT PadnamelistREFCNT_dec PadnamePV PadnameREFCNT PadnameREFCNT_dec PadnameREFCNT_inc PadnameSV PadnameUTF8 pad_new PL_comppad PL_comppad_name PL_curpad" +.IP "Password and Group access" 4 +.IX Item "Password and Group access" +\&\f(CW\*(C`GRPASSWD\*(C'\fR , \f(CW\*(C`HAS_ENDGRENT\*(C'\fR , \f(CW\*(C`HAS_ENDGRENT_R\*(C'\fR +, \f(CW\*(C`HAS_ENDPWENT\*(C'\fR , \f(CW\*(C`HAS_ENDPWENT_R\*(C'\fR +, \f(CW\*(C`HAS_GETGRENT\*(C'\fR , \f(CW\*(C`HAS_GETGRENT_R\*(C'\fR +, \f(CW\*(C`HAS_GETPWENT\*(C'\fR , \f(CW\*(C`HAS_GETPWENT_R\*(C'\fR +, \f(CW\*(C`HAS_SETGRENT\*(C'\fR , \f(CW\*(C`HAS_SETGRENT_R\*(C'\fR +, \f(CW\*(C`HAS_SETPWENT\*(C'\fR , \f(CW\*(C`HAS_SETPWENT_R\*(C'\fR +, \f(CW\*(C`PWAGE\*(C'\fR , \f(CW\*(C`PWCHANGE\*(C'\fR , \f(CW\*(C`PWCLASS\*(C'\fR +, \f(CW\*(C`PWCOMMENT\*(C'\fR , \f(CW\*(C`PWEXPIRE\*(C'\fR , \f(CW\*(C`PWGECOS\*(C'\fR +, \f(CW\*(C`PWPASSWD\*(C'\fR , \f(CW\*(C`PWQUOTA\*(C'\fR +.IX Xref "GRPASSWD HAS_ENDGRENT HAS_ENDGRENT_R HAS_ENDPWENT HAS_ENDPWENT_R HAS_GETGRENT HAS_GETGRENT_R HAS_GETPWENT HAS_GETPWENT_R HAS_SETGRENT HAS_SETGRENT_R HAS_SETPWENT HAS_SETPWENT_R PWAGE PWCHANGE PWCLASS PWCOMMENT PWEXPIRE PWGECOS PWPASSWD PWQUOTA" +.IP "Paths to system commands" 4 +.IX Item "Paths to system commands" +\&\f(CW\*(C`CSH\*(C'\fR , \f(CW\*(C`LOC_SED\*(C'\fR , \f(CW\*(C`SH_PATH\*(C'\fR +.IX Xref "CSH LOC_SED SH_PATH" +.IP "Prototype information" 4 +.IX Item "Prototype information" +\&\f(CW\*(C`CRYPT_R_PROTO\*(C'\fR , \f(CW\*(C`CTERMID_R_PROTO\*(C'\fR , +\&\f(CW\*(C`DRAND48_R_PROTO\*(C'\fR , \f(CW\*(C`ENDGRENT_R_PROTO\*(C'\fR +, \f(CW\*(C`ENDHOSTENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`ENDNETENT_R_PROTO\*(C'\fR , \f(CW\*(C`ENDPROTOENT_R_PROTO\*(C'\fR +, \f(CW\*(C`ENDPWENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`ENDSERVENT_R_PROTO\*(C'\fR , \f(CW\*(C`GDBMNDBM_H_USES_PROTOTYPES\*(C'\fR +, \f(CW\*(C`GDBM_NDBM_H_USES_PROTOTYPES\*(C'\fR +, \f(CW\*(C`GETGRENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETGRGID_R_PROTO\*(C'\fR , \f(CW\*(C`GETGRNAM_R_PROTO\*(C'\fR +, \f(CW\*(C`GETHOSTBYADDR_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETHOSTBYNAME_R_PROTO\*(C'\fR , \f(CW\*(C`GETHOSTENT_R_PROTO\*(C'\fR +, \f(CW\*(C`GETLOGIN_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETNETBYADDR_R_PROTO\*(C'\fR , \f(CW\*(C`GETNETBYNAME_R_PROTO\*(C'\fR +, \f(CW\*(C`GETNETENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETPROTOBYNAME_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETPROTOBYNUMBER_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETPROTOENT_R_PROTO\*(C'\fR , \f(CW\*(C`GETPWENT_R_PROTO\*(C'\fR +, \f(CW\*(C`GETPWNAM_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETPWUID_R_PROTO\*(C'\fR , \f(CW\*(C`GETSERVBYNAME_R_PROTO\*(C'\fR +, \f(CW\*(C`GETSERVBYPORT_R_PROTO\*(C'\fR +, \f(CW\*(C`GETSERVENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GETSPNAM_R_PROTO\*(C'\fR , \f(CW\*(C`HAS_DBMINIT_PROTO\*(C'\fR +, \f(CW\*(C`HAS_DRAND48_PROTO\*(C'\fR , +\&\f(CW\*(C`HAS_FLOCK_PROTO\*(C'\fR , \f(CW\*(C`HAS_GETHOST_PROTOS\*(C'\fR +, \f(CW\*(C`HAS_GETNET_PROTOS\*(C'\fR , +\&\f(CW\*(C`HAS_GETPROTO_PROTOS\*(C'\fR , \f(CW\*(C`HAS_GETSERV_PROTOS\*(C'\fR +, \f(CW\*(C`HAS_MODFL_PROTO\*(C'\fR , +\&\f(CW\*(C`HAS_SBRK_PROTO\*(C'\fR , \f(CW\*(C`HAS_SETRESGID_PROTO\*(C'\fR +, \f(CW\*(C`HAS_SETRESUID_PROTO\*(C'\fR , +\&\f(CW\*(C`HAS_SHMAT_PROTOTYPE\*(C'\fR , \f(CW\*(C`HAS_SOCKATMARK_PROTO\*(C'\fR +, \f(CW\*(C`HAS_SYSCALL_PROTO\*(C'\fR , +\&\f(CW\*(C`HAS_TELLDIR_PROTO\*(C'\fR , \f(CW\*(C`NDBM_H_USES_PROTOTYPES\*(C'\fR +, \f(CW\*(C`RANDOM_R_PROTO\*(C'\fR , +\&\f(CW\*(C`READDIR_R_PROTO\*(C'\fR , \f(CW\*(C`SETGRENT_R_PROTO\*(C'\fR +, \f(CW\*(C`SETHOSTENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`SETLOCALE_R_PROTO\*(C'\fR , \f(CW\*(C`SETNETENT_R_PROTO\*(C'\fR +, \f(CW\*(C`SETPROTOENT_R_PROTO\*(C'\fR , +\&\f(CW\*(C`SETPWENT_R_PROTO\*(C'\fR , \f(CW\*(C`SETSERVENT_R_PROTO\*(C'\fR +, \f(CW\*(C`SRANDOM_R_PROTO\*(C'\fR , +\&\f(CW\*(C`SRAND48_R_PROTO\*(C'\fR , \f(CW\*(C`STRERROR_R_PROTO\*(C'\fR +, \f(CW\*(C`TMPNAM_R_PROTO\*(C'\fR , +\&\f(CW\*(C`TTYNAME_R_PROTO\*(C'\fR +.IX Xref "CRYPT_R_PROTO CTERMID_R_PROTO DRAND48_R_PROTO ENDGRENT_R_PROTO ENDHOSTENT_R_PROTO ENDNETENT_R_PROTO ENDPROTOENT_R_PROTO ENDPWENT_R_PROTO ENDSERVENT_R_PROTO GDBMNDBM_H_USES_PROTOTYPES GDBM_NDBM_H_USES_PROTOTYPES GETGRENT_R_PROTO GETGRGID_R_PROTO GETGRNAM_R_PROTO GETHOSTBYADDR_R_PROTO GETHOSTBYNAME_R_PROTO GETHOSTENT_R_PROTO GETLOGIN_R_PROTO GETNETBYADDR_R_PROTO GETNETBYNAME_R_PROTO GETNETENT_R_PROTO GETPROTOBYNAME_R_PROTO GETPROTOBYNUMBER_R_PROTO GETPROTOENT_R_PROTO GETPWENT_R_PROTO GETPWNAM_R_PROTO GETPWUID_R_PROTO GETSERVBYNAME_R_PROTO GETSERVBYPORT_R_PROTO GETSERVENT_R_PROTO GETSPNAM_R_PROTO HAS_DBMINIT_PROTO HAS_DRAND48_PROTO HAS_FLOCK_PROTO HAS_GETHOST_PROTOS HAS_GETNET_PROTOS HAS_GETPROTO_PROTOS HAS_GETSERV_PROTOS HAS_MODFL_PROTO HAS_SBRK_PROTO HAS_SETRESGID_PROTO HAS_SETRESUID_PROTO HAS_SHMAT_PROTOTYPE HAS_SOCKATMARK_PROTO HAS_SYSCALL_PROTO HAS_TELLDIR_PROTO NDBM_H_USES_PROTOTYPES RANDOM_R_PROTO READDIR_R_PROTO SETGRENT_R_PROTO SETHOSTENT_R_PROTO SETLOCALE_R_PROTO SETNETENT_R_PROTO SETPROTOENT_R_PROTO SETPWENT_R_PROTO SETSERVENT_R_PROTO SRANDOM_R_PROTO SRAND48_R_PROTO STRERROR_R_PROTO TMPNAM_R_PROTO TTYNAME_R_PROTO" +.IP "REGEXP Functions" 4 +.IX Item "REGEXP Functions" +\&\f(CW\*(C`pregcomp\*(C'\fR, \f(CW\*(C`pregexec\*(C'\fR, \f(CW\*(C`re_compile\*(C'\fR , \f(CW\*(C`re_dup_guts\*(C'\fR +, \f(CW\*(C`REGEX_LOCALE_CHARSET\*(C'\fR, \f(CW\*(C`REGEXP\*(C'\fR, \f(CW\*(C`regexp_engine\*(C'\fR +, \f(CW\*(C`regexp_paren_pair\*(C'\fR, \f(CW\*(C`regmatch_info\*(C'\fR , +\&\f(CW\*(C`REXEC_COPY_SKIP_POST\*(C'\fR, \f(CW\*(C`REXEC_COPY_SKIP_PRE\*(C'\fR, \f(CW\*(C`REXEC_COPY_STR\*(C'\fR, +\&\f(CW\*(C`RXapif_ALL\*(C'\fR, \f(CW\*(C`RXapif_CLEAR\*(C'\fR, \f(CW\*(C`RXapif_DELETE\*(C'\fR, \f(CW\*(C`RXapif_EXISTS\*(C'\fR, +\&\f(CW\*(C`RXapif_FETCH\*(C'\fR, \f(CW\*(C`RXapif_FIRSTKEY\*(C'\fR, \f(CW\*(C`RXapif_NEXTKEY\*(C'\fR, \f(CW\*(C`RXapif_ONE\*(C'\fR, +\&\f(CW\*(C`RXapif_REGNAME\*(C'\fR, \f(CW\*(C`RXapif_REGNAMES\*(C'\fR, \f(CW\*(C`RXapif_REGNAMES_COUNT\*(C'\fR, +\&\f(CW\*(C`RXapif_SCALAR\*(C'\fR, \f(CW\*(C`RXapif_STORE\*(C'\fR, \f(CW\*(C`RX_BUFF_IDX_CARET_FULLMATCH\*(C'\fR, +\&\f(CW\*(C`RX_BUFF_IDX_CARET_POSTMATCH\*(C'\fR, \f(CW\*(C`RX_BUFF_IDX_CARET_PREMATCH\*(C'\fR, +\&\f(CW\*(C`RX_BUFF_IDX_FULLMATCH\*(C'\fR, \f(CW\*(C`RX_BUFF_IDX_POSTMATCH\*(C'\fR, +\&\f(CW\*(C`RX_BUFF_IDX_PREMATCH\*(C'\fR, \f(CW\*(C`RXf_NO_INPLACE_SUBST\*(C'\fR, \f(CW\*(C`RXf_NULL\*(C'\fR, +\&\f(CW\*(C`RXf_SKIPWHITE\*(C'\fR, \f(CW\*(C`RXf_SPLIT\*(C'\fR, \f(CW\*(C`RXf_START_ONLY\*(C'\fR, \f(CW\*(C`RXf_WHITE\*(C'\fR, +\&\f(CW\*(C`RXf_PMf_EXTENDED\*(C'\fR, \f(CW\*(C`RXf_PMf_FOLD\*(C'\fR, \f(CW\*(C`RXf_PMf_KEEPCOPY\*(C'\fR, +\&\f(CW\*(C`RXf_PMf_MULTILINE\*(C'\fR, \f(CW\*(C`RXf_PMf_SINGLELINE\*(C'\fR, \f(CW\*(C`RX_MATCH_COPIED\*(C'\fR, +\&\f(CW\*(C`RX_OFFS\*(C'\fR, \f(CW\*(C`SvRX\*(C'\fR , \f(CW\*(C`SvRXOK\*(C'\fR , \f(CW\*(C`SV_SAVED_COPY\*(C'\fR +.IX Xref "re_compile re_dup_guts regexp_engine regmatch_info SvRX SvRXOK" +.IP "Reports and Formats" 4 +.IX Item "Reports and Formats" +\&\f(CW\*(C`IoBOTTOM_GV\*(C'\fR, \f(CW\*(C`IoBOTTOM_NAME\*(C'\fR, \f(CW\*(C`IoFMT_GV\*(C'\fR, \f(CW\*(C`IoFMT_NAME\*(C'\fR, \f(CW\*(C`IoLINES\*(C'\fR, +\&\f(CW\*(C`IoLINES_LEFT\*(C'\fR, \f(CW\*(C`IoPAGE\*(C'\fR, \f(CW\*(C`IoPAGE_LEN\*(C'\fR, \f(CW\*(C`IoTOP_GV\*(C'\fR, \f(CW\*(C`IoTOP_NAME\*(C'\fR +.IP Signals 4 +.IX Item "Signals" +\&\f(CW\*(C`HAS_SIGINFO_SI_ADDR\*(C'\fR , \f(CW\*(C`HAS_SIGINFO_SI_BAND\*(C'\fR +, \f(CW\*(C`HAS_SIGINFO_SI_ERRNO\*(C'\fR , +\&\f(CW\*(C`HAS_SIGINFO_SI_PID\*(C'\fR , \f(CW\*(C`HAS_SIGINFO_SI_STATUS\*(C'\fR +, \f(CW\*(C`HAS_SIGINFO_SI_UID\*(C'\fR , +\&\f(CW\*(C`HAS_SIGINFO_SI_VALUE\*(C'\fR , +\&\f(CW\*(C`PERL_SIGNALS_UNSAFE_FLAG\*(C'\fR , \f(CW\*(C`rsignal\*(C'\fR +, \f(CW\*(C`rsignal_state\*(C'\fR , \f(CW\*(C`Sigjmp_buf\*(C'\fR , +\&\f(CW\*(C`Siglongjmp\*(C'\fR , \f(CW\*(C`SIG_NAME\*(C'\fR , \f(CW\*(C`SIG_NUM\*(C'\fR +, \f(CW\*(C`Sigsetjmp\*(C'\fR , \f(CW\*(C`SIG_SIZE\*(C'\fR , +\&\f(CW\*(C`whichsig\*(C'\fR, \f(CW\*(C`whichsig_pv\*(C'\fR, \f(CW\*(C`whichsig_pvn\*(C'\fR, \f(CW\*(C`whichsig_sv\*(C'\fR +.IX Xref "HAS_SIGINFO_SI_ADDR HAS_SIGINFO_SI_BAND HAS_SIGINFO_SI_ERRNO HAS_SIGINFO_SI_PID HAS_SIGINFO_SI_STATUS HAS_SIGINFO_SI_UID HAS_SIGINFO_SI_VALUE PERL_SIGNALS_UNSAFE_FLAG rsignal rsignal_state Sigjmp_buf Siglongjmp SIG_NAME SIG_NUM Sigsetjmp SIG_SIZE whichsig whichsig_pv whichsig_pvn whichsig_sv" +.IP "Site configuration" 4 +.IX Item "Site configuration" +\&\f(CW\*(C`ARCHLIB\*(C'\fR , \f(CW\*(C`ARCHLIB_EXP\*(C'\fR , \f(CW\*(C`ARCHNAME\*(C'\fR +, \f(CW\*(C`BIN\*(C'\fR , \f(CW\*(C`BIN_EXP\*(C'\fR , \f(CW\*(C`INSTALL_USR_BIN_PERL\*(C'\fR +, \f(CW\*(C`MULTIARCH\*(C'\fR , +\&\f(CW\*(C`PERL_INC_VERSION_LIST\*(C'\fR , \f(CW\*(C`PERL_OTHERLIBDIRS\*(C'\fR +, \f(CW\*(C`PERL_RELOCATABLE_INC\*(C'\fR , +\&\f(CW\*(C`PERL_TARGETARCH\*(C'\fR , \f(CW\*(C`PERL_USE_DEVEL\*(C'\fR , +\&\f(CW\*(C`PERL_VENDORARCH\*(C'\fR , \f(CW\*(C`PERL_VENDORARCH_EXP\*(C'\fR +, \f(CW\*(C`PERL_VENDORLIB_EXP\*(C'\fR , +\&\f(CW\*(C`PERL_VENDORLIB_STEM\*(C'\fR , \f(CW\*(C`PRIVLIB\*(C'\fR , +\&\f(CW\*(C`PRIVLIB_EXP\*(C'\fR , \f(CW\*(C`SITEARCH\*(C'\fR , \f(CW\*(C`SITEARCH_EXP\*(C'\fR +, \f(CW\*(C`SITELIB\*(C'\fR , \f(CW\*(C`SITELIB_EXP\*(C'\fR , +\&\f(CW\*(C`SITELIB_STEM\*(C'\fR , \f(CW\*(C`STARTPERL\*(C'\fR , +\&\f(CW\*(C`USE_64_BIT_ALL\*(C'\fR , \f(CW\*(C`USE_64_BIT_INT\*(C'\fR , +\&\f(CW\*(C`USE_BSD_GETPGRP\*(C'\fR , \f(CW\*(C`USE_BSD_SETPGRP\*(C'\fR +, \f(CW\*(C`USE_C_BACKTRACE\*(C'\fR , \f(CW\*(C`USE_CPLUSPLUS\*(C'\fR +, \f(CW\*(C`USE_CROSS_COMPILE\*(C'\fR , \f(CW\*(C`USE_DTRACE\*(C'\fR +, \f(CW\*(C`USE_DYNAMIC_LOADING\*(C'\fR , +\&\f(CW\*(C`USE_FAST_STDIO\*(C'\fR , \f(CW\*(C`USE_ITHREADS\*(C'\fR , +\&\f(CW\*(C`USE_KERN_PROC_PATHNAME\*(C'\fR , \f(CW\*(C`USE_LARGE_FILES\*(C'\fR +, \f(CW\*(C`USE_LONG_DOUBLE\*(C'\fR , \f(CW\*(C`USE_MORE_BITS\*(C'\fR +, \f(CW\*(C`USE_NSGETEXECUTABLEPATH\*(C'\fR , +\&\f(CW\*(C`USE_PERLIO\*(C'\fR , \f(CW\*(C`USE_QUADMATH\*(C'\fR , +\&\f(CW\*(C`USE_REENTRANT_API\*(C'\fR , \f(CW\*(C`USE_SEMCTL_SEMID_DS\*(C'\fR +, \f(CW\*(C`USE_SEMCTL_SEMUN\*(C'\fR , +\&\f(CW\*(C`USE_SITECUSTOMIZE\*(C'\fR , \f(CW\*(C`USE_SOCKS\*(C'\fR , +\&\f(CW\*(C`USE_STAT_BLOCKS\*(C'\fR , \f(CW\*(C`USE_STDIO_BASE\*(C'\fR , +\&\f(CW\*(C`USE_STDIO_PTR\*(C'\fR , \f(CW\*(C`USE_STRICT_BY_DEFAULT\*(C'\fR +, \f(CW\*(C`USE_THREADS\*(C'\fR +.IX Xref "ARCHLIB ARCHLIB_EXP ARCHNAME BIN BIN_EXP INSTALL_USR_BIN_PERL MULTIARCH PERL_INC_VERSION_LIST PERL_OTHERLIBDIRS PERL_RELOCATABLE_INC PERL_TARGETARCH PERL_USE_DEVEL PERL_VENDORARCH PERL_VENDORARCH_EXP PERL_VENDORLIB_EXP PERL_VENDORLIB_STEM PRIVLIB PRIVLIB_EXP SITEARCH SITEARCH_EXP SITELIB SITELIB_EXP SITELIB_STEM STARTPERL USE_64_BIT_ALL USE_64_BIT_INT USE_BSD_GETPGRP USE_BSD_SETPGRP USE_C_BACKTRACE USE_CPLUSPLUS USE_CROSS_COMPILE USE_DTRACE USE_DYNAMIC_LOADING USE_FAST_STDIO USE_ITHREADS USE_KERN_PROC_PATHNAME USE_LARGE_FILES USE_LONG_DOUBLE USE_MORE_BITS USE_NSGETEXECUTABLEPATH USE_PERLIO USE_QUADMATH USE_REENTRANT_API USE_SEMCTL_SEMID_DS USE_SEMCTL_SEMUN USE_SITECUSTOMIZE USE_SOCKS USE_STAT_BLOCKS USE_STDIO_BASE USE_STDIO_PTR USE_STRICT_BY_DEFAULT USE_THREADS" +.IP "Sockets configuration values" 4 +.IX Item "Sockets configuration values" +\&\f(CW\*(C`HAS_SOCKADDR_IN6\*(C'\fR , \f(CW\*(C`HAS_SOCKADDR_SA_LEN\*(C'\fR +, \f(CW\*(C`HAS_SOCKADDR_STORAGE\*(C'\fR , +\&\f(CW\*(C`HAS_SOCKATMARK\*(C'\fR , \f(CW\*(C`HAS_SOCKET\*(C'\fR , +\&\f(CW\*(C`HAS_SOCKETPAIR\*(C'\fR , \f(CW\*(C`HAS_SOCKS5_INIT\*(C'\fR , +\&\f(CW\*(C`I_SOCKS\*(C'\fR , \f(CW\*(C`I_SYS_SOCKIO\*(C'\fR +.IX Xref "HAS_SOCKADDR_IN6 HAS_SOCKADDR_SA_LEN HAS_SOCKADDR_STORAGE HAS_SOCKATMARK HAS_SOCKET HAS_SOCKETPAIR HAS_SOCKS5_INIT I_SOCKS I_SYS_SOCKIO" +.IP "Source Filters" 4 +.IX Item "Source Filters" +\&\f(CW\*(C`apply_builtin_cv_attributes\*(C'\fR , +\&\f(CW\*(C`filter_add\*(C'\fR, \f(CW\*(C`filter_del\*(C'\fR , \f(CW\*(C`filter_read\*(C'\fR, \f(CW\*(C`scan_vstring\*(C'\fR +, \f(CW\*(C`start_subparse\*(C'\fR +.IX Xref "apply_builtin_cv_attributes filter_del scan_vstring start_subparse" +.IP "Stack Manipulation Macros" 4 +.IX Item "Stack Manipulation Macros" +\&\f(CW\*(C`dMARK\*(C'\fR , \f(CW\*(C`dORIGMARK\*(C'\fR , \f(CW\*(C`dSP\*(C'\fR , \f(CW\*(C`dTARGET\*(C'\fR +, \f(CW\*(C`EXTEND\*(C'\fR , \f(CW\*(C`MARK\*(C'\fR , \f(CW\*(C`mPUSHi\*(C'\fR , +\&\f(CW\*(C`mPUSHn\*(C'\fR , \f(CW\*(C`mPUSHp\*(C'\fR , \f(CW\*(C`mPUSHpvs\*(C'\fR , +\&\f(CW\*(C`mPUSHs\*(C'\fR , \f(CW\*(C`mPUSHu\*(C'\fR , \f(CW\*(C`mXPUSHi\*(C'\fR , \f(CW\*(C`mXPUSHn\*(C'\fR +, \f(CW\*(C`mXPUSHp\*(C'\fR , \f(CW\*(C`mXPUSHpvs\*(C'\fR , \f(CW\*(C`mXPUSHs\*(C'\fR +, \f(CW\*(C`mXPUSHu\*(C'\fR , \f(CW\*(C`newXSproto\*(C'\fR , \f(CW\*(C`ORIGMARK\*(C'\fR +, \f(CW\*(C`PL_markstack\*(C'\fR, \f(CW\*(C`PL_markstack_ptr\*(C'\fR, \f(CW\*(C`PL_savestack\*(C'\fR, +\&\f(CW\*(C`PL_savestack_ix\*(C'\fR, \f(CW\*(C`PL_scopestack\*(C'\fR, \f(CW\*(C`PL_scopestack_ix\*(C'\fR, +\&\f(CW\*(C`PL_scopestack_name\*(C'\fR, \f(CW\*(C`PL_stack_base\*(C'\fR, \f(CW\*(C`PL_stack_sp\*(C'\fR, \f(CW\*(C`PL_tmps_floor\*(C'\fR, +\&\f(CW\*(C`PL_tmps_ix\*(C'\fR, \f(CW\*(C`PL_tmps_stack\*(C'\fR, \f(CW\*(C`POPi\*(C'\fR , \f(CW\*(C`POPl\*(C'\fR , \f(CW\*(C`POPn\*(C'\fR +, \f(CW\*(C`POPp\*(C'\fR , \f(CW\*(C`POPpbytex\*(C'\fR , \f(CW\*(C`POPpx\*(C'\fR , +\&\f(CW\*(C`POPs\*(C'\fR , \f(CW\*(C`POPu\*(C'\fR , \f(CW\*(C`POPul\*(C'\fR , \f(CW\*(C`PUSHi\*(C'\fR , +\&\f(CW\*(C`PUSHMARK\*(C'\fR , \f(CW\*(C`PUSHmortal\*(C'\fR , \f(CW\*(C`PUSHn\*(C'\fR , +\&\f(CW\*(C`PUSHp\*(C'\fR , \f(CW\*(C`PUSHpvs\*(C'\fR , \f(CW\*(C`PUSHs\*(C'\fR , \f(CW\*(C`PUSHu\*(C'\fR +, \f(CW\*(C`PUTBACK\*(C'\fR , \f(CW\*(C`SAVEt_INT\*(C'\fR, \f(CW\*(C`SP\*(C'\fR , \f(CW\*(C`SPAGAIN\*(C'\fR +, \f(CW\*(C`SSNEW\*(C'\fR, \f(CW\*(C`SSNEWa\*(C'\fR, \f(CW\*(C`SSNEWat\*(C'\fR, \f(CW\*(C`SSNEWt\*(C'\fR +, \f(CW\*(C`SSPTR\*(C'\fR, \f(CW\*(C`SSPTRt\*(C'\fR +, \f(CW\*(C`TARG\*(C'\fR , \f(CW\*(C`TOPs\*(C'\fR, \f(CW\*(C`XPUSHi\*(C'\fR , +\&\f(CW\*(C`XPUSHmortal\*(C'\fR , \f(CW\*(C`XPUSHn\*(C'\fR , \f(CW\*(C`XPUSHp\*(C'\fR , +\&\f(CW\*(C`XPUSHpvs\*(C'\fR , \f(CW\*(C`XPUSHs\*(C'\fR , \f(CW\*(C`XPUSHu\*(C'\fR , +\&\f(CW\*(C`XS_APIVERSION_BOOTCHECK\*(C'\fR , \f(CW\*(C`XSRETURN\*(C'\fR +, \f(CW\*(C`XSRETURN_EMPTY\*(C'\fR , \f(CW\*(C`XSRETURN_IV\*(C'\fR +, \f(CW\*(C`XSRETURN_NO\*(C'\fR , \f(CW\*(C`XSRETURN_NV\*(C'\fR +, \f(CW\*(C`XSRETURN_PV\*(C'\fR , \f(CW\*(C`XSRETURN_UNDEF\*(C'\fR +, \f(CW\*(C`XSRETURN_UV\*(C'\fR , \f(CW\*(C`XSRETURN_YES\*(C'\fR +, \f(CW\*(C`XST_mIV\*(C'\fR , \f(CW\*(C`XST_mNO\*(C'\fR , \f(CW\*(C`XST_mNV\*(C'\fR +, \f(CW\*(C`XST_mPV\*(C'\fR , \f(CW\*(C`XST_mUNDEF\*(C'\fR , \f(CW\*(C`XST_mUV\*(C'\fR +, \f(CW\*(C`XST_mYES\*(C'\fR , \f(CW\*(C`XS_VERSION\*(C'\fR , +\&\f(CW\*(C`XS_VERSION_BOOTCHECK\*(C'\fR +.IX Xref "dMARK dORIGMARK dSP dTARGET EXTEND MARK mPUSHi mPUSHn mPUSHp mPUSHpvs mPUSHs mPUSHu mXPUSHi mXPUSHn mXPUSHp mXPUSHpvs mXPUSHs mXPUSHu newXSproto ORIGMARK POPi POPl POPn POPp POPpbytex POPpx POPs POPu POPul PUSHi PUSHMARK PUSHmortal PUSHn PUSHp PUSHpvs PUSHs PUSHu PUTBACK SP SPAGAIN SSNEW SSNEWa SSNEWat SSNEWt SSPTR SSPTRt TARG XPUSHi XPUSHmortal XPUSHn XPUSHp XPUSHpvs XPUSHs XPUSHu XS_APIVERSION_BOOTCHECK XSRETURN XSRETURN_EMPTY XSRETURN_IV XSRETURN_NO XSRETURN_NV XSRETURN_PV XSRETURN_UNDEF XSRETURN_UV XSRETURN_YES XST_mIV XST_mNO XST_mNV XST_mPV XST_mUNDEF XST_mUV XST_mYES XS_VERSION XS_VERSION_BOOTCHECK" +.IP "String Handling" 4 +.IX Item "String Handling" +\&\f(CW\*(C`CAT2\*(C'\fR , \f(CW\*(C`Copy\*(C'\fR, \f(CW\*(C`CopyD\*(C'\fR , \f(CW\*(C`delimcpy\*(C'\fR +, \f(CW\*(C`do_join\*(C'\fR , \f(CW\*(C`do_sprintf\*(C'\fR , +\&\f(CW\*(C`fbm_compile\*(C'\fR , \f(CW\*(C`fbm_instr\*(C'\fR , \f(CW\*(C`foldEQ\*(C'\fR +, \f(CW\*(C`ibcmp\*(C'\fR , \f(CW\*(C`ibcmp_locale\*(C'\fR , +\&\f(CW\*(C`ibcmp_utf8\*(C'\fR , \f(CW\*(C`instr\*(C'\fR , \f(CW\*(C`memCHRs\*(C'\fR , +\&\f(CW\*(C`memEQ\*(C'\fR , \f(CW\*(C`memEQs\*(C'\fR , \f(CW\*(C`memNE\*(C'\fR , \f(CW\*(C`memNEs\*(C'\fR +, \f(CW\*(C`Move\*(C'\fR, \f(CW\*(C`MoveD\*(C'\fR , \f(CW\*(C`my_snprintf\*(C'\fR +, \f(CW\*(C`my_sprintf\*(C'\fR , \f(CW\*(C`my_strnlen\*(C'\fR , +\&\f(CW\*(C`my_vsnprintf\*(C'\fR , \f(CW\*(C`NewCopy\*(C'\fR , \f(CW\*(C`ninstr\*(C'\fR +, \f(CW\*(C`Nullch\*(C'\fR , \f(CW\*(C`PL_na\*(C'\fR , \f(CW\*(C`rninstr\*(C'\fR , +\&\f(CW\*(C`savepv\*(C'\fR , \f(CW\*(C`savepvn\*(C'\fR , \f(CW\*(C`savepvs\*(C'\fR , +\&\f(CW\*(C`savesharedpv\*(C'\fR , \f(CW\*(C`savesharedpvn\*(C'\fR , +\&\f(CW\*(C`savesharedpvs\*(C'\fR , \f(CW\*(C`savesharedsvpv\*(C'\fR , +\&\f(CW\*(C`savesvpv\*(C'\fR , \f(CW\*(C`strEQ\*(C'\fR , \f(CW\*(C`strGE\*(C'\fR , \f(CW\*(C`strGT\*(C'\fR +, \f(CW\*(C`STRINGIFY\*(C'\fR , \f(CW\*(C`strLE\*(C'\fR , \f(CW\*(C`STRLEN\*(C'\fR, \f(CW\*(C`strLT\*(C'\fR +, \f(CW\*(C`strNE\*(C'\fR , \f(CW\*(C`strnEQ\*(C'\fR , \f(CW\*(C`strnNE\*(C'\fR , +\&\f(CW\*(C`STR_WITH_LEN\*(C'\fR , \f(CW\*(C`Zero\*(C'\fR, \f(CW\*(C`ZeroD\*(C'\fR +.IX Xref "CAT2 Copy CopyD delimcpy do_join do_sprintf fbm_compile fbm_instr foldEQ ibcmp ibcmp_locale ibcmp_utf8 instr memCHRs memEQ memEQs memNE memNEs Move MoveD my_snprintf my_sprintf my_strnlen my_vsnprintf NewCopy ninstr Nullch PL_na rninstr savepv savepvn savepvs savesharedpv savesharedpvn savesharedpvs savesharedsvpv savesvpv strEQ strGE strGT STRINGIFY strLE strLT strNE strnEQ strnNE STR_WITH_LEN Zero ZeroD" +.IP "SV Flags" 4 +.IX Item "SV Flags" +\&\f(CW\*(C`SVt_IV\*(C'\fR , \f(CW\*(C`SVt_NULL\*(C'\fR , \f(CW\*(C`SVt_NV\*(C'\fR , +\&\f(CW\*(C`SVt_PV\*(C'\fR , \f(CW\*(C`SVt_PVAV\*(C'\fR , \f(CW\*(C`SVt_PVCV\*(C'\fR , +\&\f(CW\*(C`SVt_PVFM\*(C'\fR , \f(CW\*(C`SVt_PVGV\*(C'\fR , \f(CW\*(C`SVt_PVHV\*(C'\fR , +\&\f(CW\*(C`SVt_PVIO\*(C'\fR , \f(CW\*(C`SVt_PVIV\*(C'\fR , \f(CW\*(C`SVt_PVLV\*(C'\fR , +\&\f(CW\*(C`SVt_PVMG\*(C'\fR , \f(CW\*(C`SVt_PVNV\*(C'\fR , \f(CW\*(C`SVt_PVOBJ\*(C'\fR +, \f(CW\*(C`SVt_REGEXP\*(C'\fR , \f(CW\*(C`svtype\*(C'\fR +.IX Xref "SVt_IV SVt_NULL SVt_NV SVt_PV SVt_PVAV SVt_PVCV SVt_PVFM SVt_PVGV SVt_PVHV SVt_PVIO SVt_PVIV SVt_PVLV SVt_PVMG SVt_PVNV SVt_PVOBJ SVt_REGEXP svtype" +.IP "SV Handling" 4 +.IX Xref "SV_CATBYTES SV_CATUTF8 SV_COW_DROP_PV SV_FORCE_UTF8_UPGRADE SV_GM AGIC SV_HAS_TRAILING_NUL SV_IMMEDIATE_UNREF SV_NOSTEAL SV_SMAGIC SV_UTF8_NO_ENCODING SVs_TEMP" +.IX Item "SV Handling" +\&\f(CW\*(C`AV_FROM_REF\*(C'\fR, \f(CW\*(C`CV_FROM_REF\*(C'\fR, \f(CW\*(C`HV_FROM_REF\*(C'\fR +, \f(CW\*(C`BOOL_INTERNALS_sv_isbool\*(C'\fR +, \f(CW\*(C`BOOL_INTERNALS_sv_isbool_false\*(C'\fR +, \f(CW\*(C`BOOL_INTERNALS_sv_isbool_true\*(C'\fR +, \f(CW\*(C`boolSV\*(C'\fR , \f(CW\*(C`croak_xs_usage\*(C'\fR +, \f(CW\*(C`DEFSV\*(C'\fR , \f(CW\*(C`DEFSV_set\*(C'\fR , \f(CW\*(C`get_sv\*(C'\fR +, \f(CW\*(C`isGV_with_GP\*(C'\fR , \f(CW\*(C`looks_like_number\*(C'\fR +, \f(CW\*(C`MUTABLE_AV\*(C'\fR, \f(CW\*(C`MUTABLE_CV\*(C'\fR, \f(CW\*(C`MUTABLE_GV\*(C'\fR, +\&\f(CW\*(C`MUTABLE_HV\*(C'\fR, \f(CW\*(C`MUTABLE_IO\*(C'\fR, \f(CW\*(C`MUTABLE_PTR\*(C'\fR, \f(CW\*(C`MUTABLE_SV\*(C'\fR +, \f(CW\*(C`newRV\*(C'\fR, \f(CW\*(C`newRV_inc\*(C'\fR , +\&\f(CW\*(C`newRV_noinc\*(C'\fR , \f(CW\*(C`newSV\*(C'\fR , \f(CW\*(C`newSVbool\*(C'\fR +, \f(CW\*(C`newSV_false\*(C'\fR , \f(CW\*(C`newSVhek\*(C'\fR , +\&\f(CW\*(C`newSVhek_mortal\*(C'\fR , \f(CW\*(C`newSViv\*(C'\fR , \f(CW\*(C`newSVnv\*(C'\fR +, \f(CW\*(C`newSVpadname\*(C'\fR , \f(CW\*(C`newSVpv\*(C'\fR , +\&\f(CW\*(C`newSVpvf\*(C'\fR , \f(CW\*(C`newSVpvf_nocontext\*(C'\fR , +\&\f(CW\*(C`newSVpvn\*(C'\fR , \f(CW\*(C`newSVpvn_flags\*(C'\fR , +\&\f(CW\*(C`newSVpvn_share\*(C'\fR , \f(CW\*(C`newSVpvn_utf8\*(C'\fR , +\&\f(CW\*(C`newSVpvs\*(C'\fR , \f(CW\*(C`newSVpvs_flags\*(C'\fR , +\&\f(CW\*(C`newSVpv_share\*(C'\fR , \f(CW\*(C`newSVpvs_share\*(C'\fR , +\&\f(CW\*(C`newSVrv\*(C'\fR , \f(CW\*(C`newSVsv\*(C'\fR, \f(CW\*(C`newSVsv_flags\*(C'\fR, \f(CW\*(C`newSVsv_nomg\*(C'\fR +, \f(CW\*(C`newSV_true\*(C'\fR , +\&\f(CW\*(C`newSV_type\*(C'\fR , \f(CW\*(C`newSV_type_mortal\*(C'\fR , +\&\f(CW\*(C`newSVuv\*(C'\fR , \f(CW\*(C`Nullsv\*(C'\fR , \f(CW\*(C`PL_sv_no\*(C'\fR , +\&\f(CW\*(C`PL_sv_undef\*(C'\fR , \f(CW\*(C`PL_sv_yes\*(C'\fR , \f(CW\*(C`PL_sv_zero\*(C'\fR +, \f(CW\*(C`SAVE_DEFSV\*(C'\fR , \f(CW\*(C`sortsv\*(C'\fR , +\&\f(CW\*(C`sortsv_flags\*(C'\fR , \f(CW\*(C`SV\*(C'\fR, \f(CW\*(C`SvAMAGIC\*(C'\fR , +\&\f(CW\*(C`SvAMAGIC_off\*(C'\fR , \f(CW\*(C`SvAMAGIC_on\*(C'\fR , +\&\f(CW\*(C`sv_backoff\*(C'\fR , \f(CW\*(C`sv_bless\*(C'\fR , \f(CW\*(C`SvBoolFlagsOK\*(C'\fR +, \f(CW\*(C`sv_catpv\*(C'\fR, \f(CW\*(C`sv_catpv_flags\*(C'\fR, \f(CW\*(C`sv_catpv_mg\*(C'\fR, +\&\f(CW\*(C`sv_catpv_nomg\*(C'\fR +, \f(CW\*(C`sv_catpvf\*(C'\fR, +\&\f(CW\*(C`sv_catpvf_mg\*(C'\fR, \f(CW\*(C`sv_catpvf_mg_nocontext\*(C'\fR, \f(CW\*(C`sv_catpvf_nocontext\*(C'\fR +, +\&\f(CW\*(C`sv_catpvn\*(C'\fR, \f(CW\*(C`sv_catpvn_flags\*(C'\fR, \f(CW\*(C`sv_catpvn_mg\*(C'\fR, \f(CW\*(C`sv_catpvn_nomg\*(C'\fR +, +\&\f(CW\*(C`sv_catpvs\*(C'\fR , \f(CW\*(C`sv_catpvs_flags\*(C'\fR , +\&\f(CW\*(C`sv_catpvs_mg\*(C'\fR , \f(CW\*(C`sv_catpvs_nomg\*(C'\fR , +\&\f(CW\*(C`sv_catsv\*(C'\fR, \f(CW\*(C`sv_catsv_flags\*(C'\fR, \f(CW\*(C`sv_catsv_mg\*(C'\fR, \f(CW\*(C`sv_catsv_nomg\*(C'\fR +, +\&\f(CW\*(C`SV_CHECK_THINKFIRST\*(C'\fR , +\&\f(CW\*(C`SV_CHECK_THINKFIRST_COW_DROP\*(C'\fR , \f(CW\*(C`sv_chop\*(C'\fR +, \f(CW\*(C`sv_clear\*(C'\fR , \f(CW\*(C`sv_cmp\*(C'\fR , \f(CW\*(C`sv_cmp_flags\*(C'\fR +, \f(CW\*(C`sv_cmp_locale\*(C'\fR , \f(CW\*(C`sv_cmp_locale_flags\*(C'\fR +, \f(CW\*(C`sv_collxfrm\*(C'\fR , \f(CW\*(C`sv_collxfrm_flags\*(C'\fR +, \f(CW\*(C`sv_copypv\*(C'\fR, \f(CW\*(C`sv_copypv_flags\*(C'\fR, \f(CW\*(C`sv_copypv_nomg\*(C'\fR +, \f(CW\*(C`SvCUR\*(C'\fR , +\&\f(CW\*(C`SvCUR_set\*(C'\fR , \f(CW\*(C`sv_2cv\*(C'\fR , \f(CW\*(C`sv_dec\*(C'\fR, \f(CW\*(C`sv_dec_nomg\*(C'\fR +, \f(CW\*(C`sv_derived_from\*(C'\fR , +\&\f(CW\*(C`sv_derived_from_hv\*(C'\fR , \f(CW\*(C`sv_derived_from_pv\*(C'\fR +, \f(CW\*(C`sv_derived_from_pvn\*(C'\fR , +\&\f(CW\*(C`sv_derived_from_sv\*(C'\fR , \f(CW\*(C`sv_does\*(C'\fR , +\&\f(CW\*(C`sv_does_pv\*(C'\fR , \f(CW\*(C`sv_does_pvn\*(C'\fR , \f(CW\*(C`sv_does_sv\*(C'\fR +, \f(CW\*(C`SvEND\*(C'\fR , \f(CW\*(C`sv_eq\*(C'\fR , \f(CW\*(C`sv_eq_flags\*(C'\fR +, \f(CW\*(C`sv_force_normal\*(C'\fR , +\&\f(CW\*(C`sv_force_normal_flags\*(C'\fR , \f(CW\*(C`sv_free\*(C'\fR , +\&\f(CW\*(C`SvGAMAGIC\*(C'\fR , \f(CW\*(C`sv_get_backrefs\*(C'\fR , +\&\f(CW\*(C`SvGETMAGIC\*(C'\fR , \f(CW\*(C`sv_gets\*(C'\fR , \f(CW\*(C`SvGROW\*(C'\fR , +\&\f(CW\*(C`SvIandPOK\*(C'\fR , \f(CW\*(C`SvIandPOK_off\*(C'\fR , +\&\f(CW\*(C`SvIandPOK_on\*(C'\fR , \f(CW\*(C`sv_inc\*(C'\fR, \f(CW\*(C`sv_inc_nomg\*(C'\fR +, \f(CW\*(C`sv_insert\*(C'\fR , \f(CW\*(C`sv_insert_flags\*(C'\fR +, \f(CW\*(C`sv_2io\*(C'\fR , \f(CW\*(C`SvIOK\*(C'\fR , \f(CW\*(C`SvIOK_notUV\*(C'\fR +, \f(CW\*(C`SvIOK_off\*(C'\fR , \f(CW\*(C`SvIOK_on\*(C'\fR , +\&\f(CW\*(C`SvIOK_only\*(C'\fR , \f(CW\*(C`SvIOK_only_UV\*(C'\fR , \f(CW\*(C`SvIOKp\*(C'\fR +, \f(CW\*(C`SvIOK_UV\*(C'\fR , \f(CW\*(C`sv_isa\*(C'\fR , \f(CW\*(C`sv_isa_sv\*(C'\fR +, \f(CW\*(C`SvIsBOOL\*(C'\fR , \f(CW\*(C`SvIsCOW\*(C'\fR , +\&\f(CW\*(C`SvIsCOW_shared_hash\*(C'\fR , \f(CW\*(C`sv_isobject\*(C'\fR +, \f(CW\*(C`SvIV\*(C'\fR, \f(CW\*(C`SvIV_nomg\*(C'\fR, \f(CW\*(C`SvIVx\*(C'\fR +, \f(CW\*(C`sv_2iv_flags\*(C'\fR , \f(CW\*(C`SvIV_set\*(C'\fR +, \f(CW\*(C`SvIVX\*(C'\fR , \f(CW\*(C`SvLEN\*(C'\fR , \f(CW\*(C`sv_len\*(C'\fR , +\&\f(CW\*(C`SvLEN_set\*(C'\fR , \f(CW\*(C`sv_len_utf8\*(C'\fR, \f(CW\*(C`sv_len_utf8_nomg\*(C'\fR +, \f(CW\*(C`SvLOCK\*(C'\fR , \f(CW\*(C`sv_magic\*(C'\fR +, \f(CW\*(C`sv_magicext\*(C'\fR , \f(CW\*(C`SvMAGIC_set\*(C'\fR , +\&\f(CW\*(C`sv_2mortal\*(C'\fR , \f(CW\*(C`sv_mortalcopy\*(C'\fR , +\&\f(CW\*(C`sv_mortalcopy_flags\*(C'\fR , \f(CW\*(C`sv_newmortal\*(C'\fR +, \f(CW\*(C`SvNIOK\*(C'\fR , \f(CW\*(C`SvNIOK_off\*(C'\fR , +\&\f(CW\*(C`SvNIOKp\*(C'\fR , \f(CW\*(C`SvNOK\*(C'\fR , \f(CW\*(C`SvNOK_off\*(C'\fR , +\&\f(CW\*(C`SvNOK_on\*(C'\fR , \f(CW\*(C`SvNOK_only\*(C'\fR , \f(CW\*(C`SvNOKp\*(C'\fR , +\&\f(CW\*(C`sv_nolocking\*(C'\fR , \f(CW\*(C`sv_nounlocking\*(C'\fR , +\&\f(CW\*(C`sv_numeq\*(C'\fR , \f(CW\*(C`sv_numeq_flags\*(C'\fR , \f(CW\*(C`SvNV\*(C'\fR, +\&\f(CW\*(C`SvNV_nomg\*(C'\fR, \f(CW\*(C`SvNVx\*(C'\fR , \f(CW\*(C`sv_2nv_flags\*(C'\fR +, \f(CW\*(C`SvNV_set\*(C'\fR , \f(CW\*(C`SvNVX\*(C'\fR , \f(CW\*(C`SvOK\*(C'\fR +, \f(CW\*(C`SvOOK\*(C'\fR , \f(CW\*(C`SvOOK_off\*(C'\fR , \f(CW\*(C`SvOOK_offset\*(C'\fR +, \f(CW\*(C`SvPOK\*(C'\fR , \f(CW\*(C`SvPOK_off\*(C'\fR , \f(CW\*(C`SvPOK_on\*(C'\fR +, \f(CW\*(C`SvPOK_only\*(C'\fR , \f(CW\*(C`SvPOK_only_UTF8\*(C'\fR +, \f(CW\*(C`SvPOKp\*(C'\fR , \f(CW\*(C`sv_pos_b2u\*(C'\fR , +\&\f(CW\*(C`sv_pos_b2u_flags\*(C'\fR , \f(CW\*(C`sv_pos_u2b\*(C'\fR , +\&\f(CW\*(C`sv_pos_u2b_flags\*(C'\fR , \f(CW\*(C`SvPV\*(C'\fR, \f(CW\*(C`SvPV_const\*(C'\fR, +\&\f(CW\*(C`SvPV_flags\*(C'\fR, \f(CW\*(C`SvPV_flags_const\*(C'\fR, \f(CW\*(C`SvPV_flags_mutable\*(C'\fR, \f(CW\*(C`SvPV_mutable\*(C'\fR, +\&\f(CW\*(C`SvPV_nolen\*(C'\fR, \f(CW\*(C`SvPV_nolen_const\*(C'\fR, \f(CW\*(C`SvPV_nomg\*(C'\fR, \f(CW\*(C`SvPV_nomg_const\*(C'\fR, +\&\f(CW\*(C`SvPV_nomg_const_nolen\*(C'\fR, \f(CW\*(C`SvPV_nomg_nolen\*(C'\fR, \f(CW\*(C`SvPVbyte\*(C'\fR, +\&\f(CW\*(C`SvPVbyte_nolen\*(C'\fR, \f(CW\*(C`SvPVbyte_nomg\*(C'\fR, \f(CW\*(C`SvPVbyte_or_null\*(C'\fR, +\&\f(CW\*(C`SvPVbyte_or_null_nomg\*(C'\fR, \f(CW\*(C`SvPVbytex\*(C'\fR, \f(CW\*(C`SvPVbytex_nolen\*(C'\fR, \f(CW\*(C`SvPVutf8\*(C'\fR, +\&\f(CW\*(C`SvPVutf8_nolen\*(C'\fR, \f(CW\*(C`SvPVutf8_nomg\*(C'\fR, \f(CW\*(C`SvPVutf8_or_null\*(C'\fR, +\&\f(CW\*(C`SvPVutf8_or_null_nomg\*(C'\fR, \f(CW\*(C`SvPVutf8x\*(C'\fR, \f(CW\*(C`SvPVx\*(C'\fR, \f(CW\*(C`SvPVx_const\*(C'\fR, +\&\f(CW\*(C`SvPVx_nolen\*(C'\fR, \f(CW\*(C`SvPVx_nolen_const\*(C'\fR + +, \f(CW\*(C`sv_2pv\*(C'\fR, \f(CW\*(C`sv_2pv_flags\*(C'\fR , +\&\f(CW\*(C`sv_2pvbyte\*(C'\fR, \f(CW\*(C`sv_2pvbyte_flags\*(C'\fR , +\&\f(CW\*(C`SvPVCLEAR\*(C'\fR , \f(CW\*(C`SvPVCLEAR_FRESH\*(C'\fR , +\&\f(CW\*(C`SvPV_force\*(C'\fR, \f(CW\*(C`SvPV_force_flags\*(C'\fR, \f(CW\*(C`SvPV_force_flags_mutable\*(C'\fR, +\&\f(CW\*(C`SvPV_force_flags_nolen\*(C'\fR, \f(CW\*(C`SvPV_force_mutable\*(C'\fR, \f(CW\*(C`SvPV_force_nolen\*(C'\fR, +\&\f(CW\*(C`SvPV_force_nomg\*(C'\fR, \f(CW\*(C`SvPV_force_nomg_nolen\*(C'\fR, \f(CW\*(C`SvPVbyte_force\*(C'\fR, +\&\f(CW\*(C`SvPVbytex_force\*(C'\fR, \f(CW\*(C`SvPVutf8_force\*(C'\fR, \f(CW\*(C`SvPVutf8x_force\*(C'\fR, \f(CW\*(C`SvPVx_force\*(C'\fR +, \f(CW\*(C`SvPV_free\*(C'\fR , \f(CW\*(C`sv_pvn_force_flags\*(C'\fR +, \f(CW\*(C`SvPV_renew\*(C'\fR , \f(CW\*(C`SvPV_set\*(C'\fR +, \f(CW\*(C`SvPV_shrink_to_cur\*(C'\fR , \f(CW\*(C`sv_2pvutf8\*(C'\fR, +\&\f(CW\*(C`sv_2pvutf8_flags\*(C'\fR , \f(CW\*(C`SvPVX\*(C'\fR, +\&\f(CW\*(C`SvPVX_const\*(C'\fR, \f(CW\*(C`SvPVX_mutable\*(C'\fR, \f(CW\*(C`SvPVXx\*(C'\fR +, \f(CW\*(C`SvPVXtrue\*(C'\fR , +\&\f(CW\*(C`SvREADONLY\*(C'\fR , \f(CW\*(C`SvREADONLY_off\*(C'\fR , +\&\f(CW\*(C`SvREADONLY_on\*(C'\fR , \f(CW\*(C`sv_ref\*(C'\fR , \f(CW\*(C`SvREFCNT\*(C'\fR +, \f(CW\*(C`SvREFCNT_dec\*(C'\fR, \f(CW\*(C`SvREFCNT_dec_set_NULL\*(C'\fR, +\&\f(CW\*(C`SvREFCNT_dec_ret_NULL\*(C'\fR, \f(CW\*(C`SvREFCNT_dec_NN\*(C'\fR +, \f(CW\*(C`SvREFCNT_inc\*(C'\fR, \f(CW\*(C`SvREFCNT_inc_NN\*(C'\fR, \f(CW\*(C`SvREFCNT_inc_simple\*(C'\fR, +\&\f(CW\*(C`SvREFCNT_inc_simple_NN\*(C'\fR, \f(CW\*(C`SvREFCNT_inc_simple_void\*(C'\fR, +\&\f(CW\*(C`SvREFCNT_inc_simple_void_NN\*(C'\fR, \f(CW\*(C`SvREFCNT_inc_void\*(C'\fR, +\&\f(CW\*(C`SvREFCNT_inc_void_NN\*(C'\fR +, \f(CW\*(C`sv_reftype\*(C'\fR , \f(CW\*(C`sv_replace\*(C'\fR +, \f(CW\*(C`sv_report_used\*(C'\fR , \f(CW\*(C`sv_reset\*(C'\fR +, \f(CW\*(C`SvROK\*(C'\fR , \f(CW\*(C`SvROK_off\*(C'\fR , \f(CW\*(C`SvROK_on\*(C'\fR +, \f(CW\*(C`SvRV\*(C'\fR , \f(CW\*(C`SvRV_set\*(C'\fR , \f(CW\*(C`sv_rvunweaken\*(C'\fR +, \f(CW\*(C`sv_rvweaken\*(C'\fR , \f(CW\*(C`sv_setbool\*(C'\fR, +\&\f(CW\*(C`sv_setbool_mg\*(C'\fR , \f(CW\*(C`sv_set_bool\*(C'\fR +, \f(CW\*(C`sv_set_false\*(C'\fR , \f(CW\*(C`sv_setiv\*(C'\fR, +\&\f(CW\*(C`sv_setiv_mg\*(C'\fR , \f(CW\*(C`SvSETMAGIC\*(C'\fR , +\&\f(CW\*(C`SvSetMagicSV\*(C'\fR, \f(CW\*(C`SvSetMagicSV_nosteal\*(C'\fR, \f(CW\*(C`SvSetSV\*(C'\fR, \f(CW\*(C`SvSetSV_nosteal\*(C'\fR +, +\&\f(CW\*(C`sv_setnv\*(C'\fR, \f(CW\*(C`sv_setnv_mg\*(C'\fR , \f(CW\*(C`sv_setpv\*(C'\fR, +\&\f(CW\*(C`sv_setpv_mg\*(C'\fR, \f(CW\*(C`sv_setpvn\*(C'\fR, \f(CW\*(C`sv_setpvn_fresh\*(C'\fR, \f(CW\*(C`sv_setpvn_mg\*(C'\fR, +\&\f(CW\*(C`sv_setpvs\*(C'\fR, \f(CW\*(C`sv_setpvs_mg\*(C'\fR +, \f(CW\*(C`sv_setpv_bufsize\*(C'\fR , +\&\f(CW\*(C`sv_setpvf\*(C'\fR, \f(CW\*(C`sv_setpvf_mg\*(C'\fR, \f(CW\*(C`sv_setpvf_mg_nocontext\*(C'\fR, +\&\f(CW\*(C`sv_setpvf_nocontext\*(C'\fR +, +\&\f(CW\*(C`sv_setref_iv\*(C'\fR , \f(CW\*(C`sv_setref_nv\*(C'\fR , +\&\f(CW\*(C`sv_setref_pv\*(C'\fR , \f(CW\*(C`sv_setref_pvn\*(C'\fR , +\&\f(CW\*(C`sv_setref_pvs\*(C'\fR , \f(CW\*(C`sv_setref_uv\*(C'\fR , +\&\f(CW\*(C`sv_setrv_inc\*(C'\fR, \f(CW\*(C`sv_setrv_inc_mg\*(C'\fR , +\&\f(CW\*(C`sv_setrv_noinc\*(C'\fR, \f(CW\*(C`sv_setrv_noinc_mg\*(C'\fR +, \f(CW\*(C`sv_setsv\*(C'\fR, \f(CW\*(C`sv_setsv_flags\*(C'\fR, +\&\f(CW\*(C`sv_setsv_mg\*(C'\fR, \f(CW\*(C`sv_setsv_nomg\*(C'\fR +, \f(CW\*(C`sv_set_true\*(C'\fR +, \f(CW\*(C`sv_set_undef\*(C'\fR , \f(CW\*(C`sv_setuv\*(C'\fR, +\&\f(CW\*(C`sv_setuv_mg\*(C'\fR , \f(CW\*(C`SvSHARE\*(C'\fR , +\&\f(CW\*(C`SvSHARED_HASH\*(C'\fR , \f(CW\*(C`SvSTASH\*(C'\fR , \f(CW\*(C`SvSTASH_set\*(C'\fR +, \f(CW\*(C`sv_streq\*(C'\fR , \f(CW\*(C`sv_streq_flags\*(C'\fR +, \f(CW\*(C`SvTRUE\*(C'\fR, \f(CW\*(C`SvTRUE_NN\*(C'\fR, \f(CW\*(C`SvTRUE_nomg\*(C'\fR, +\&\f(CW\*(C`SvTRUE_nomg_NN\*(C'\fR, \f(CW\*(C`SvTRUEx\*(C'\fR +, \f(CW\*(C`SvTYPE\*(C'\fR +, \f(CW\*(C`SvUNLOCK\*(C'\fR , \f(CW\*(C`sv_unmagic\*(C'\fR , +\&\f(CW\*(C`sv_unmagicext\*(C'\fR , \f(CW\*(C`sv_unref\*(C'\fR , +\&\f(CW\*(C`sv_unref_flags\*(C'\fR , \f(CW\*(C`SvUOK\*(C'\fR , \f(CW\*(C`SvUPGRADE\*(C'\fR +, \f(CW\*(C`sv_upgrade\*(C'\fR , \f(CW\*(C`sv_usepvn\*(C'\fR, +\&\f(CW\*(C`sv_usepvn_flags\*(C'\fR, \f(CW\*(C`sv_usepvn_mg\*(C'\fR +, \f(CW\*(C`sv_utf8_decode\*(C'\fR +, \f(CW\*(C`sv_utf8_downgrade\*(C'\fR, \f(CW\*(C`sv_utf8_downgrade_flags\*(C'\fR, +\&\f(CW\*(C`sv_utf8_downgrade_nomg\*(C'\fR +, +\&\f(CW\*(C`sv_utf8_encode\*(C'\fR , \f(CW\*(C`SvUTF8_off\*(C'\fR , +\&\f(CW\*(C`SvUTF8_on\*(C'\fR , \f(CW\*(C`sv_utf8_upgrade\*(C'\fR, \f(CW\*(C`sv_utf8_upgrade_flags\*(C'\fR, +\&\f(CW\*(C`sv_utf8_upgrade_flags_grow\*(C'\fR, \f(CW\*(C`sv_utf8_upgrade_nomg\*(C'\fR +, \f(CW\*(C`SvUTF8\*(C'\fR , \f(CW\*(C`SvUV\*(C'\fR, \f(CW\*(C`SvUV_nomg\*(C'\fR, \f(CW\*(C`SvUVx\*(C'\fR +, \f(CW\*(C`sv_2uv_flags\*(C'\fR , \f(CW\*(C`SvUV_set\*(C'\fR +, \f(CW\*(C`SvUVX\*(C'\fR , \f(CW\*(C`SvUVXx\*(C'\fR , \f(CW\*(C`sv_vcatpvf\*(C'\fR, +\&\f(CW\*(C`sv_vcatpvf_mg\*(C'\fR , \f(CW\*(C`sv_vcatpvfn\*(C'\fR, +\&\f(CW\*(C`sv_vcatpvfn_flags\*(C'\fR , \f(CW\*(C`SvVOK\*(C'\fR , +\&\f(CW\*(C`sv_vsetpvf\*(C'\fR, \f(CW\*(C`sv_vsetpvf_mg\*(C'\fR , +\&\f(CW\*(C`sv_vsetpvfn\*(C'\fR , \f(CW\*(C`SvVSTRING_mg\*(C'\fR , +\&\f(CW\*(C`vnewSVpvf\*(C'\fR +.IX Xref "AV_FROM_REF CV_FROM_REF HV_FROM_REF BOOL_INTERNALS_sv_isbool BOOL_INTERNALS_sv_isbool_false BOOL_INTERNALS_sv_isbool_true boolSV croak_xs_usage DEFSV DEFSV_set get_sv isGV_with_GP looks_like_number MUTABLE_AV MUTABLE_CV MUTABLE_GV MUTABLE_HV MUTABLE_IO MUTABLE_ PTR MUTABLE_SV newRV newRV_inc newRV_noinc newSV newSVbool newSV_false newSVhek newSVhek_mortal newSViv newSVnv newSVpadname newSVpv newSVpvf newSVpvf_nocontext newSVpvn newSVpvn_flags newSVpvn_share newSVpvn_utf8 newSVpvs newSVpvs_flags newSVpv_share newSVpvs_share newSVrv newSVsv newSVsv_flags newSVsv_nomg newSV_true newSV_type newSV_type_mortal newSVuv Nullsv PL_sv_no PL_sv_undef PL_sv_yes PL_sv_zero SAVE_DEFSV sortsv sortsv_flags SvAMAGIC SvAMAGIC_off SvAMAGIC_on sv_backoff sv_bless SvBoolFlagsOK sv_catpv sv_catpv_flags sv_catpv_mg sv_catpv_nomg sv_catpvf sv_catpvf_mg sv_catpvf_mg_nocontext sv_catpvf_nocontext sv_catpvn sv_catpvn_flags sv_catpvn_mg sv_catpvn_nomg sv_catpvs sv_catpvs_flags sv_catpvs_mg sv_catpvs_nomg sv_catsv sv_catsv_flags sv_catsv_mg sv_catsv_nomg SV_CHECK_THINKFIRST SV_CHECK_THINKFIRST_COW_DROP sv_chop sv_clear sv_cmp sv_cmp_flags sv_cmp_locale sv_cmp_locale_flags sv_collxfrm sv_collxfrm_flags sv_copypv sv_copypv_flags sv_copypv_nomg SvCUR SvCUR_set sv_2cv sv_dec sv_dec_nomg sv_derived_from sv_derived_from_hv sv_derived_from_pv sv_derived_from_pvn sv_derived_from_sv sv_does sv_does_pv sv_does_pvn sv_does_sv SvEND sv_eq sv_eq_flags sv_force_normal sv_force_normal_flags sv_free SvGAMAGIC sv_get_backrefs SvGETMAGIC sv_gets SvGROW SvIandPOK SvIandPOK_off SvIandPOK_on sv_inc sv_inc_nomg sv_insert sv_insert_flags sv_2io SvIOK SvIOK_notUV SvIOK_off SvIOK_on SvIOK_only SvIOK_only_UV SvIOKp SvIOK_UV sv_isa sv_isa_sv SvIsBOOL SvIsCOW SvIsCOW_shared_hash sv_isobject SvIV SvIV_nomg SvIVx sv_2iv_flags SvIV_set SvIVX SvLEN sv_len SvLEN_set sv_len_utf8 sv_len_utf8_nomg SvLOCK sv_magic sv_magicext SvMAGIC_set sv_2mortal sv_mortalcopy sv_mortalcopy_flags sv_newmortal SvNIOK SvNIOK_off SvNIOKp SvNOK SvNOK_off SvNOK_on SvNOK_only SvNOKp sv_nolocking sv_nounlocking sv_numeq sv_numeq_flags SvNV SvNV_nomg SvNVx sv_2nv_flags SvNV_set SvNVX SvOK SvOOK SvOOK_off SvOOK_offset SvPOK SvPOK_off SvPOK_on SvPOK_only SvPOK_only_UTF8 SvPOKp sv_pos_b2u sv_pos_b2u_flags sv_pos_u2b sv_pos_u2b_flags SvPV SvPV_const SvPV_flags SvPV_flags_const SvPV_flags_mutable SvPV_mutable SvPV_nolen SvPV_nolen_const SvPV_nomg SvPV_nomg_const SvPV_nomg_const_nolen SvPV_nomg_nolen SvPVbyte SvPVbyte_nolen SvP Vbyte_nomg SvPVbyte_or_null SvPVbyte_or_null_nomg SvPVbytex SvPVbyt ex_nolen SvPVutf8 SvPVutf8_nolen SvPVutf8_nomg SvPVutf8_or_null S vPVutf8_or_null_nomg SvPVutf8x SvPVx SvPVx_const SvPVx_nolen SvPV x_nolen_const sv_2pv sv_2pv_flags sv_2pvbyte sv_2pvbyte_flags SvPVCLEAR SvPVCLEAR_FRESH SvPV_force SvPV_force_flags SvPV_force_flags_mutable SvPV_force_fla gs_nolen SvPV_force_mutable SvPV_force_nolen SvPV_force_nomg SvPV_f orce_nomg_nolen SvPVbyte_force SvPVbytex_force SvPVutf8_force SvPVu tf8x_force SvPVx_force SvPV_free sv_pvn_force_flags SvPV_renew SvPV_set SvPV_shrink_to_cur sv_2pvutf8 sv_2pvutf8_flags SvPVX SvPVX_const SvPVX_mutable SvPVXx SvPVXtrue SvREADONLY SvREADONLY_off SvREADONLY_on sv_ref SvREFCNT SvREFCNT_dec SvREFCNT_dec_set_NULL SvREFCNT_dec_ret_NULL SvREFCNT_d ec_NN SvREFCNT_inc SvREFCNT_inc_NN SvREFCNT_inc_simple SvREFCNT_inc_simpl e_NN SvREFCNT_inc_simple_void SvREFCNT_inc_simple_void_NN SvREFCNT_in c_void SvREFCNT_inc_void_NN sv_reftype sv_replace sv_report_used sv_reset SvROK SvROK_off SvROK_on SvRV SvRV_set sv_rvunweaken sv_rvweaken sv_setbool sv_setbool_mg sv_set_bool sv_set_false sv_setiv sv_setiv_mg SvSETMAGIC SvSetMagicSV SvSetMagicSV_nosteal SvSetSV SvSetSV_nosteal sv_setnv sv_setnv_mg sv_setpv sv_setpv_mg sv_setpvn sv_setpvn_fresh sv_setpvn_mg sv_ setpvs sv_setpvs_mg sv_setpv_bufsize sv_setpvf sv_setpvf_mg sv_setpvf_mg_nocontext sv_setpvf_nocontext sv_setref_iv sv_setref_nv sv_setref_pv sv_setref_pvn sv_setref_pvs sv_setref_uv sv_setrv_inc sv_setrv_inc_mg sv_setrv_noinc sv_setrv_noinc_mg sv_setsv sv_setsv_flags sv_setsv_mg sv_setsv_nomg sv_set_true sv_set_undef sv_setuv sv_setuv_mg SvSHARE SvSHARED_HASH SvSTASH SvSTASH_set sv_streq sv_streq_flags SvTRUE SvTRUE_NN SvTRUE_nomg SvTRUE_nomg_NN SvTRUEx SvTYPE SvUNLOCK sv_unmagic sv_unmagicext sv_unref sv_unref_flags SvUOK SvUPGRADE sv_upgrade sv_usepvn sv_usepvn_flags sv_usepvn_mg sv_utf8_decode sv_utf8_downgrade sv_utf8_downgrade_flags sv_utf8_downgrade_nomg sv_utf8_encode SvUTF8_off SvUTF8_on sv_utf8_upgrade sv_utf8_upgrade_flags sv_utf8_upgrade_flags_grow sv _utf8_upgrade_nomg SvUTF8 SvUV SvUV_nomg SvUVx sv_2uv_flags SvUV_set SvUVX SvUVXx sv_vcatpvf sv_vcatpvf_mg sv_vcatpvfn sv_vcatpvfn_flags SvVOK sv_vsetpvf sv_vsetpvf_mg sv_vsetpvfn SvVSTRING_mg vnewSVpvf" +.IP Tainting 4 +.IX Item "Tainting" +\&\f(CW\*(C`SvTAINT\*(C'\fR , \f(CW\*(C`SvTAINTED\*(C'\fR , \f(CW\*(C`SvTAINTED_off\*(C'\fR +, \f(CW\*(C`SvTAINTED_on\*(C'\fR +.IX Xref "SvTAINT SvTAINTED SvTAINTED_off SvTAINTED_on" +.IP Time 4 +.IX Item "Time" +\&\f(CW\*(C`ASCTIME_R_PROTO\*(C'\fR , \f(CW\*(C`CTIME_R_PROTO\*(C'\fR , +\&\f(CW\*(C`GMTIME_MAX\*(C'\fR , \f(CW\*(C`GMTIME_MIN\*(C'\fR , \f(CW\*(C`GMTIME_R_PROTO\*(C'\fR +, \f(CW\*(C`HAS_ASCTIME_R\*(C'\fR , \f(CW\*(C`HAS_ASCTIME64\*(C'\fR +, \f(CW\*(C`HAS_CTIME_R\*(C'\fR , \f(CW\*(C`HAS_CTIME64\*(C'\fR +, \f(CW\*(C`HAS_DIFFTIME\*(C'\fR , \f(CW\*(C`HAS_DIFFTIME64\*(C'\fR +, \f(CW\*(C`HAS_FUTIMES\*(C'\fR , \f(CW\*(C`HAS_GETITIMER\*(C'\fR +, \f(CW\*(C`HAS_GETTIMEOFDAY\*(C'\fR , \f(CW\*(C`HAS_GMTIME_R\*(C'\fR +, \f(CW\*(C`HAS_GMTIME64\*(C'\fR , \f(CW\*(C`HAS_LOCALTIME_R\*(C'\fR +, \f(CW\*(C`HAS_LOCALTIME64\*(C'\fR , \f(CW\*(C`HAS_MKTIME\*(C'\fR +, \f(CW\*(C`HAS_MKTIME64\*(C'\fR , \f(CW\*(C`HAS_NANOSLEEP\*(C'\fR +, \f(CW\*(C`HAS_SETITIMER\*(C'\fR , \f(CW\*(C`HAS_STRFTIME\*(C'\fR +, \f(CW\*(C`HAS_TIME\*(C'\fR , \f(CW\*(C`HAS_TIMEGM\*(C'\fR , +\&\f(CW\*(C`HAS_TIMES\*(C'\fR , \f(CW\*(C`HAS_TM_TM_GMTOFF\*(C'\fR , +\&\f(CW\*(C`HAS_TM_TM_ZONE\*(C'\fR , \f(CW\*(C`HAS_TZNAME\*(C'\fR , +\&\f(CW\*(C`HAS_USLEEP\*(C'\fR , \f(CW\*(C`HAS_USLEEP_PROTO\*(C'\fR , +\&\f(CW\*(C`I_TIME\*(C'\fR , \f(CW\*(C`I_UTIME\*(C'\fR , \f(CW\*(C`LOCALTIME_MAX\*(C'\fR +, \f(CW\*(C`LOCALTIME_MIN\*(C'\fR , +\&\f(CW\*(C`LOCALTIME_R_NEEDS_TZSET\*(C'\fR , \f(CW\*(C`LOCALTIME_R_PROTO\*(C'\fR +, \f(CW\*(C`L_R_TZSET\*(C'\fR , \f(CW\*(C`mini_mktime\*(C'\fR +, \f(CW\*(C`my_strftime\*(C'\fR , \f(CW\*(C`switch_to_global_locale\*(C'\fR +, POSIX::localeconv, +I18N::Langinfo, items \f(CW\*(C`CRNCYSTR\*(C'\fR and \f(CW\*(C`THOUSEP\*(C'\fR, +"Perl_langinfo" in perlapi, items \f(CW\*(C`CRNCYSTR\*(C'\fR and \f(CW\*(C`THOUSEP\*(C'\fR, \f(CW\*(C`sync_locale\*(C'\fR +.IX Xref "ASCTIME_R_PROTO CTIME_R_PROTO GMTIME_MAX GMTIME_MIN GMTIME_R_PROTO HAS_ASCTIME_R HAS_ASCTIME64 HAS_CTIME_R HAS_CTIME64 HAS_DIFFTIME HAS_DIFFTIME64 HAS_FUTIMES HAS_GETITIMER HAS_GETTIMEOFDAY HAS_GMTIME_R HAS_GMTIME64 HAS_LOCALTIME_R HAS_LOCALTIME64 HAS_MKTIME HAS_MKTIME64 HAS_NANOSLEEP HAS_SETITIMER HAS_STRFTIME HAS_TIME HAS_TIMEGM HAS_TIMES HAS_TM_TM_GMTOFF HAS_TM_TM_ZONE HAS_TZNAME HAS_USLEEP HAS_USLEEP_PROTO I_TIME I_UTIME LOCALTIME_MAX LOCALTIME_MIN LOCALTIME_R_NEEDS_TZSET LOCALTIME_R_PROTO L_R_TZSET mini_mktime my_strftime switch_to_global_locale sync_locale" +.IP "Typedef names" 4 +.IX Item "Typedef names" +\&\f(CW\*(C`DB_Hash_t\*(C'\fR , \f(CW\*(C`DB_Prefix_t\*(C'\fR , \f(CW\*(C`Direntry_t\*(C'\fR +, \f(CW\*(C`Fpos_t\*(C'\fR , \f(CW\*(C`Free_t\*(C'\fR , \f(CW\*(C`Gid_t\*(C'\fR , +\&\f(CW\*(C`Gid_t_f\*(C'\fR , \f(CW\*(C`Gid_t_sign\*(C'\fR , \f(CW\*(C`Gid_t_size\*(C'\fR +, \f(CW\*(C`Groups_t\*(C'\fR , \f(CW\*(C`Malloc_t\*(C'\fR , \f(CW\*(C`Mmap_t\*(C'\fR +, \f(CW\*(C`Mode_t\*(C'\fR , \f(CW\*(C`Netdb_hlen_t\*(C'\fR , +\&\f(CW\*(C`Netdb_host_t\*(C'\fR , \f(CW\*(C`Netdb_name_t\*(C'\fR , +\&\f(CW\*(C`Netdb_net_t\*(C'\fR , \f(CW\*(C`Off_t\*(C'\fR , \f(CW\*(C`Off_t_size\*(C'\fR +, \f(CW\*(C`Pid_t\*(C'\fR , \f(CW\*(C`Rand_seed_t\*(C'\fR , +\&\f(CW\*(C`Select_fd_set_t\*(C'\fR , \f(CW\*(C`Shmat_t\*(C'\fR , \f(CW\*(C`Signal_t\*(C'\fR +, \f(CW\*(C`Size_t\*(C'\fR , \f(CW\*(C`Size_t_size\*(C'\fR , +\&\f(CW\*(C`Sock_size_t\*(C'\fR , \f(CW\*(C`SSize_t\*(C'\fR , \f(CW\*(C`Time_t\*(C'\fR , +\&\f(CW\*(C`Uid_t\*(C'\fR , \f(CW\*(C`Uid_t_f\*(C'\fR , \f(CW\*(C`Uid_t_sign\*(C'\fR , +\&\f(CW\*(C`Uid_t_size\*(C'\fR +.IX Xref "DB_Hash_t DB_Prefix_t Direntry_t Fpos_t Free_t Gid_t Gid_t_f Gid_t_sign Gid_t_size Groups_t Malloc_t Mmap_t Mode_t Netdb_hlen_t Netdb_host_t Netdb_name_t Netdb_net_t Off_t Off_t_size Pid_t Rand_seed_t Select_fd_set_t Shmat_t Signal_t Size_t Size_t_size Sock_size_t SSize_t Time_t Uid_t Uid_t_f Uid_t_sign Uid_t_size" +.IP "Unicode Support X <UNICODE_DISALLOW_ILLEGAL_INTERCHANGE>" 4 +.IX Xref "UNICODE_DISALLOW_ABOVE_31_BIT UNICODE_DISALLOW_ILLEGAL_C9_INTERCHANGE UNICODE_DISALLOW_NONCHAR UNICODE_ DISALLOW_PERL_EXTENDED UNICODE_DISALLOW_SUPER UNICODE_DISALLOW_SURROGAT E UNICODE_WARN_ABOVE_31_BIT UNICODE_WARN_ILLEGAL_C9_INTERCHANGE UNICO DE_WARN_ILLEGAL_INTERCHANGE UNICODE_WARN_NONCHAR UNICODE_WARN_PERL_EXTE NDED UNICODE_WARN_SUPER UNICODE_WARN_SURROGATE UNI_DISPLAY_BACKSLASH UNI_DISPLAY_BACKSPACE UNI_DISPLAY_ISPRINT UNI_DISPLAY_QQ UNI_DISPLA Y_REGEX UTF8_CHECK_ONLY UTF8_DISALLOW_ILLEGAL_C9_INTERCHANGE UTF8_DIS ALLOW_ILLEGAL_INTERCHANGE UTF8_DISALLOW_NONCHAR UTF8_DISALLOW_PERL_EXTE NDED UTF8_DISALLOW_SUPER UTF8_DISALLOW_SURROGATE UTF8_GOT_CONTINUATIO N UTF8_GOT_EMPTY UTF8_GOT_LONG UTF8_GOT_NONCHAR UTF8_GOT_NON_CONTIN UATION UTF8_GOT_OVERFLOW UTF8_GOT_PERL_EXTENDED UTF8_GOT_SHORT UTF8 _GOT_SUPER UTF8_GOT_SURROGATE UTF8_WARN_ILLEGAL_C9_INTERCHANGE UTF8_W ARN_ILLEGAL_INTERCHANGE UTF8_WARN_NONCHAR UTF8_WARN_PERL_EXTENDED UTF 8_WARN_SUPER UTF8_WARN_SURROGATE" +.IX Item "Unicode Support X <UNICODE_DISALLOW_ILLEGAL_INTERCHANGE>" +\&\f(CW\*(C`BOM_UTF8\*(C'\fR , \f(CW\*(C`bytes_cmp_utf8\*(C'\fR , +\&\f(CW\*(C`bytes_from_utf8\*(C'\fR , \f(CW\*(C`bytes_to_utf8\*(C'\fR , +\&\f(CW\*(C`DO_UTF8\*(C'\fR , \f(CW\*(C`foldEQ_utf8\*(C'\fR , \f(CW\*(C`is_ascii_string\*(C'\fR +, \f(CW\*(C`isC9_STRICT_UTF8_CHAR\*(C'\fR , +\&\f(CW\*(C`is_c9strict_utf8_string\*(C'\fR , +\&\f(CW\*(C`is_c9strict_utf8_string_loc\*(C'\fR , +\&\f(CW\*(C`is_c9strict_utf8_string_loclen\*(C'\fR , +\&\f(CW\*(C`is_invariant_string\*(C'\fR , \f(CW\*(C`isSTRICT_UTF8_CHAR\*(C'\fR +, \f(CW\*(C`is_strict_utf8_string\*(C'\fR , +\&\f(CW\*(C`is_strict_utf8_string_loc\*(C'\fR , +\&\f(CW\*(C`is_strict_utf8_string_loclen\*(C'\fR , +\&\f(CW\*(C`isUTF8_CHAR\*(C'\fR , \f(CW\*(C`is_utf8_char_buf\*(C'\fR , +\&\f(CW\*(C`isUTF8_CHAR_flags\*(C'\fR , \f(CW\*(C`is_utf8_fixed_width_buf_flags\*(C'\fR +, \f(CW\*(C`is_utf8_fixed_width_buf_loc_flags\*(C'\fR +, +\&\f(CW\*(C`is_utf8_fixed_width_buf_loclen_flags\*(C'\fR +, \f(CW\*(C`is_utf8_invariant_string\*(C'\fR +, \f(CW\*(C`is_utf8_invariant_string_loc\*(C'\fR +, \f(CW\*(C`is_utf8_string\*(C'\fR , +\&\f(CW\*(C`is_utf8_string_flags\*(C'\fR , \f(CW\*(C`is_utf8_string_loc\*(C'\fR +, \f(CW\*(C`is_utf8_string_loc_flags\*(C'\fR +, \f(CW\*(C`is_utf8_string_loclen\*(C'\fR +, \f(CW\*(C`is_utf8_string_loclen_flags\*(C'\fR +, \f(CW\*(C`is_utf8_valid_partial_char\*(C'\fR +, \f(CW\*(C`is_utf8_valid_partial_char_flags\*(C'\fR +, \f(CW\*(C`LATIN1_TO_NATIVE\*(C'\fR +, \f(CW\*(C`NATIVE_TO_LATIN1\*(C'\fR , +\&\f(CW\*(C`NATIVE_TO_UNI\*(C'\fR , \f(CW\*(C`pv_uni_display\*(C'\fR , +\&\f(CW\*(C`REPLACEMENT_CHARACTER_UTF8\*(C'\fR , +\&\f(CW\*(C`sv_cat_decode\*(C'\fR , \f(CW\*(C`sv_recode_to_utf8\*(C'\fR +, \f(CW\*(C`sv_uni_display\*(C'\fR , +\&\f(CW\*(C`UNICODE_IS_NONCHAR\*(C'\fR , \f(CW\*(C`UNICODE_IS_REPLACEMENT\*(C'\fR +, \f(CW\*(C`UNICODE_IS_SUPER\*(C'\fR , +\&\f(CW\*(C`UNICODE_IS_SURROGATE\*(C'\fR , \f(CW\*(C`UNICODE_REPLACEMENT\*(C'\fR +, \f(CW\*(C`UNI_TO_NATIVE\*(C'\fR , \f(CW\*(C`UTF8_CHK_SKIP\*(C'\fR +, \f(CW\*(C`utf8_distance\*(C'\fR , \f(CW\*(C`utf8_hop\*(C'\fR +, \f(CW\*(C`utf8_hop_back\*(C'\fR , \f(CW\*(C`utf8_hop_forward\*(C'\fR +, \f(CW\*(C`utf8_hop_safe\*(C'\fR , +\&\f(CW\*(C`UTF8_IS_INVARIANT\*(C'\fR , \f(CW\*(C`UTF8_IS_NONCHAR\*(C'\fR +, \f(CW\*(C`UTF8_IS_REPLACEMENT\*(C'\fR , +\&\f(CW\*(C`UTF8_IS_SUPER\*(C'\fR , \f(CW\*(C`UTF8_IS_SURROGATE\*(C'\fR +, \f(CW\*(C`utf8_length\*(C'\fR , \f(CW\*(C`UTF8_MAXBYTES\*(C'\fR +, \f(CW\*(C`UTF8_MAXBYTES_CASE\*(C'\fR , +\&\f(CW\*(C`utf8ness_t\*(C'\fR , \f(CW\*(C`UTF8NESS_YES\*(C'\fR, \f(CW\*(C`UTF8NESS_NO\*(C'\fR, +\&\f(CW\*(C`UTF8NESS_IMMATERIAL\*(C'\fR, \f(CW\*(C`UTF8NESS_UNKNOWN\*(C'\fR, \f(CW\*(C`0\ <=\ \fR\f(CIenum\ value\fR\f(CW\ <=\ UTF8NESS_IMMATERIAL\*(C'\fR, \f(CW\*(C`UTF8NESS_IMMATERIAL\ <=\ <\fR\f(CIenum\ value\fR\f(CW\*(C'\fR, \f(CW\*(C`utf8n_to_uvchr\*(C'\fR , \f(CW\*(C`utf8n_to_uvchr_error\*(C'\fR +, \f(CW\*(C`UTF8_GOT_PERL_EXTENDED\*(C'\fR, +\&\f(CW\*(C`UTF8_GOT_CONTINUATION\*(C'\fR, \f(CW\*(C`UTF8_GOT_EMPTY\*(C'\fR, \f(CW\*(C`UTF8_GOT_LONG\*(C'\fR, +\&\f(CW\*(C`UTF8_GOT_NONCHAR\*(C'\fR, \f(CW\*(C`UTF8_GOT_NON_CONTINUATION\*(C'\fR, \f(CW\*(C`UTF8_GOT_OVERFLOW\*(C'\fR, +\&\f(CW\*(C`UTF8_GOT_SHORT\*(C'\fR, \f(CW\*(C`UTF8_GOT_SUPER\*(C'\fR, \f(CW\*(C`UTF8_GOT_SURROGATE\*(C'\fR, +\&\f(CW\*(C`utf8n_to_uvchr_msgs\*(C'\fR , \f(CW\*(C`text\*(C'\fR, \f(CW\*(C`warn_categories\*(C'\fR, +\&\f(CW\*(C`flag\*(C'\fR, \f(CW\*(C`UTF8_SAFE_SKIP\*(C'\fR , \f(CW\*(C`UTF8SKIP\*(C'\fR , +\&\f(CW\*(C`"UTF8_SAFE_SKIP" in perlapi\*(C'\fR if you know the maximum ending pointer in the +buffer pointed to by \f(CW\*(C`s\*(C'\fR; or, \f(CW\*(C`"UTF8_CHK_SKIP" in perlapi\*(C'\fR if you don't +know it, \f(CW\*(C`UTF8_SKIP\*(C'\fR , \f(CW\*(C`utf8_to_bytes\*(C'\fR , +\&\f(CW\*(C`utf8_to_uvchr\*(C'\fR , \f(CW\*(C`utf8_to_uvchr_buf\*(C'\fR +, \f(CW\*(C`UVCHR_IS_INVARIANT\*(C'\fR , +\&\f(CW\*(C`UVCHR_SKIP\*(C'\fR , \f(CW\*(C`uvchr_to_utf8_flags\*(C'\fR , +\&\f(CW\*(C`uvchr_to_utf8_flags_msgs\*(C'\fR , \f(CW\*(C`text\*(C'\fR, +\&\f(CW\*(C`warn_categories\*(C'\fR, \f(CW\*(C`flag\*(C'\fR, \f(CW\*(C`uvchr_to_utf8\*(C'\fR +.IX Xref "BOM_UTF8 bytes_cmp_utf8 bytes_from_utf8 bytes_to_utf8 DO_UTF8 foldEQ_utf8 is_ascii_string isC9_STRICT_UTF8_CHAR is_c9strict_utf8_string is_c9strict_utf8_string_loc is_c9strict_utf8_string_loclen is_invariant_string isSTRICT_UTF8_CHAR is_strict_utf8_string is_strict_utf8_string_loc is_strict_utf8_string_loclen isUTF8_CHAR is_utf8_char_buf isUTF8_CHAR_flags is_utf8_fixed_width_buf_flags is_utf8_fixed_width_buf_loc_flags is_utf8_fixed_width_buf_loclen_flags is_utf8_invariant_string is_utf8_invariant_string_loc is_utf8_string is_utf8_string_flags is_utf8_string_loc is_utf8_string_loc_flags is_utf8_string_loclen is_utf8_string_loclen_flags is_utf8_valid_partial_char is_utf8_valid_partial_char_flags LATIN1_TO_NATIVE NATIVE_TO_LATIN1 NATIVE_TO_UNI pv_uni_display REPLACEMENT_CHARACTER_UTF8 sv_cat_decode sv_recode_to_utf8 sv_uni_display UNICODE_IS_NONCHAR UNICODE_IS_REPLACEMENT UNICODE_IS_SUPER UNICODE_IS_SURROGATE UNICODE_REPLACEMENT UNI_TO_NATIVE UTF8_CHK_SKIP utf8_distance utf8_hop utf8_hop_back utf8_hop_forward utf8_hop_safe UTF8_IS_INVARIANT UTF8_IS_NONCHAR UTF8_IS_REPLACEMENT UTF8_IS_SUPER UTF8_IS_SURROGATE utf8_length UTF8_MAXBYTES UTF8_MAXBYTES_CASE utf8ness_t utf8n_to_uvchr utf8n_to_uvchr_error utf8n_to_uvchr_msgs UTF8_SAFE_SKIP UTF8SKIP UTF8_SKIP utf8_to_bytes utf8_to_uvchr utf8_to_uvchr_buf UVCHR_IS_INVARIANT UVCHR_SKIP uvchr_to_utf8_flags uvchr_to_utf8_flags_msgs uvchr_to_utf8" +.IP "Utility Functions" 4 +.IX Item "Utility Functions" +\&\f(CW\*(C`C_ARRAY_END\*(C'\fR , \f(CW\*(C`C_ARRAY_LENGTH\*(C'\fR , +\&\f(CW\*(C`getcwd_sv\*(C'\fR , \f(CW\*(C`IN_PERL_COMPILETIME\*(C'\fR , +\&\f(CW\*(C`IN_PERL_RUNTIME\*(C'\fR , \f(CW\*(C`IS_SAFE_SYSCALL\*(C'\fR +, \f(CW\*(C`is_safe_syscall\*(C'\fR , \f(CW\*(C`my_setenv\*(C'\fR +, \f(CW\*(C`newPADxVOP\*(C'\fR , \f(CW\*(C`phase_name\*(C'\fR , +\&\f(CW\*(C`Poison\*(C'\fR , \f(CW\*(C`PoisonFree\*(C'\fR , \f(CW\*(C`PoisonNew\*(C'\fR +, \f(CW\*(C`PoisonWith\*(C'\fR , \f(CW\*(C`StructCopy\*(C'\fR , +\&\f(CW\*(C`sv_destroyable\*(C'\fR , \f(CW\*(C`sv_nosharing\*(C'\fR +.IX Xref "C_ARRAY_END C_ARRAY_LENGTH getcwd_sv IN_PERL_COMPILETIME IN_PERL_RUNTIME IS_SAFE_SYSCALL is_safe_syscall my_setenv newPADxVOP phase_name Poison PoisonFree PoisonNew PoisonWith StructCopy sv_destroyable sv_nosharing" +.IP Versioning 4 +.IX Item "Versioning" +\&\f(CW\*(C`new_version\*(C'\fR , \f(CW\*(C`PERL_REVISION\*(C'\fR , +\&\f(CW\*(C`PERL_SUBVERSION\*(C'\fR , \f(CW\*(C`PERL_VERSION\*(C'\fR , +\&\f(CW\*(C`PERL_VERSION_EQ\*(C'\fR, \f(CW\*(C`PERL_VERSION_GE\*(C'\fR, \f(CW\*(C`PERL_VERSION_GT\*(C'\fR, +\&\f(CW\*(C`PERL_VERSION_LE\*(C'\fR, \f(CW\*(C`PERL_VERSION_LT\*(C'\fR, \f(CW\*(C`PERL_VERSION_NE\*(C'\fR +, \f(CW\*(C`prescan_version\*(C'\fR , +\&\f(CW\*(C`scan_version\*(C'\fR , \f(CW\*(C`upg_version\*(C'\fR , \f(CW\*(C`vcmp\*(C'\fR +, \f(CW\*(C`vnormal\*(C'\fR , \f(CW\*(C`vnumify\*(C'\fR , \f(CW\*(C`vstringify\*(C'\fR +, \f(CW\*(C`vverify\*(C'\fR , The SV is an HV or a reference to an +HV, The hash contains a "version" key, The "version" key has a reference to +an AV as its value +.IX Xref "new_version PERL_REVISION PERL_SUBVERSION PERL_VERSION PERL_VERSION_EQ PERL_VERSION_GE PERL_VERSION_GT PERL_VERSION_LE P ERL_VERSION_LT PERL_VERSION_NE prescan_version scan_version upg_version vcmp vnormal vnumify vstringify vverify" +.IP "Warning and Dieing" 4 +.IX Xref "WARN_ALL WARN_AMBIGUOUS WARN_BAREWORD WARN_CLOSED WARN_CLOSURE WARN_DEBUGGING WARN_DEPRECATED WARN_DEPRECATED__APOSTROPHE_AS_PACKAGE_S EPARATOR WARN_DEPRECATED__DELIMITER_WILL_BE_PAIRED WARN_DEPRECATED__DOT _IN_INC WARN_DEPRECATED__GOTO_CONSTRUCT WARN_DEPRECATED__SMARTMATCH W ARN_DEPRECATED__UNICODE_PROPERTY_NAME WARN_DEPRECATED__VERSION_DOWNGRADE WARN_DIGIT WARN_EXEC WARN_EXITING WARN_EXPERIMENTAL WARN_EXPERIME NTAL__ARGS_ARRAY_WITH_SIGNATURES WARN_EXPERIMENTAL__BUILTIN WARN_EXPERI MENTAL__CLASS WARN_EXPERIMENTAL__CONST_ATTR WARN_EXPERIMENTAL__DECLARED _REFS WARN_EXPERIMENTAL__DEFER WARN_EXPERIMENTAL__EXTRA_PAIRED_DELIMITE RS WARN_EXPERIMENTAL__FOR_LIST WARN_EXPERIMENTAL__PRIVATE_USE WARN_EX PERIMENTAL__REFALIASING WARN_EXPERIMENTAL__REGEX_SETS WARN_EXPERIMENTAL __RE_STRICT WARN_EXPERIMENTAL__TRY WARN_EXPERIMENTAL__UNIPROP_WILDCARDS WARN_EXPERIMENTAL__VLB WARN_GLOB WARN_ILLEGALPROTO WARN_IMPRECISIO N WARN_INPLACE WARN_INTERNAL WARN_IO WARN_LAYER WARN_LOCALE WAR N_MALLOC WARN_MISC WARN_MISSING WARN_NEWLINE WARN_NONCHAR WARN_NO N_UNICODE WARN_NUMERIC WARN_ONCE WARN_OVERFLOW WARN_PACK WARN_PAR ENTHESIS WARN_PIPE WARN_PORTABLE WARN_PRECEDENCE WARN_PRINTF WARN _PROTOTYPE WARN_QW WARN_RECURSION WARN_REDEFINE WARN_REDUNDANT WA RN_REGEXP WARN_RESERVED WARN_SCALAR WARN_SEMICOLON WARN_SEVERE WA RN_SHADOW WARN_SIGNAL WARN_SUBSTR WARN_SURROGATE WARN_SYNTAX WARN _SYSCALLS WARN_TAINT WARN_THREADS WARN_UNINITIALIZED WARN_UNOPENED WARN_UNPACK WARN_UNTIE WARN_UTF8 WARN_VOID" +.IX Item "Warning and Dieing" +\&\f(CW\*(C`ckWARN\*(C'\fR, \f(CW\*(C`ckWARN2\*(C'\fR, \f(CW\*(C`ckWARN3\*(C'\fR, \f(CW\*(C`ckWARN4\*(C'\fR +, \f(CW\*(C`ckWARN_d\*(C'\fR, \f(CW\*(C`ckWARN2_d\*(C'\fR, +\&\f(CW\*(C`ckWARN3_d\*(C'\fR, \f(CW\*(C`ckWARN4_d\*(C'\fR , +\&\f(CW\*(C`ck_warner\*(C'\fR, \f(CW\*(C`ck_warner_d\*(C'\fR , \f(CW\*(C`CLEAR_ERRSV\*(C'\fR +, \f(CW\*(C`croak\*(C'\fR, \f(CW\*(C`croak_nocontext\*(C'\fR , +\&\f(CW\*(C`croak_no_modify\*(C'\fR , \f(CW\*(C`croak_sv\*(C'\fR , \f(CW\*(C`die\*(C'\fR, +\&\f(CW\*(C`die_nocontext\*(C'\fR , \f(CW\*(C`die_sv\*(C'\fR , \f(CW\*(C`ERRSV\*(C'\fR +, \f(CW\*(C`packWARN\*(C'\fR, \f(CW\*(C`packWARN2\*(C'\fR, \f(CW\*(C`packWARN3\*(C'\fR, \f(CW\*(C`packWARN4\*(C'\fR +, \f(CW\*(C`SANE_ERRSV\*(C'\fR +, \f(CW\*(C`vcroak\*(C'\fR , \f(CW\*(C`vwarn\*(C'\fR , \f(CW\*(C`vwarner\*(C'\fR +, \f(CW\*(C`warn\*(C'\fR, \f(CW\*(C`warn_nocontext\*(C'\fR , \f(CW\*(C`warner\*(C'\fR, +\&\f(CW\*(C`warner_nocontext\*(C'\fR , \f(CW\*(C`warn_sv\*(C'\fR +.IX Xref "ckWARN ckWARN2 ckWARN3 ckWARN4 ckWARN_d ckWARN2_d ckWARN3_d ckWARN4_d ck_warner ck_warner_d CLEAR_ERRSV croak croak_nocontext croak_no_modify croak_sv die die_nocontext die_sv ERRSV packWARN packWARN2 packWARN3 packWARN4 SANE_ERRSV vcroak vwarn vwarner warn warn_nocontext warner warner_nocontext warn_sv" +.IP XS 4 +.IX Item "XS" +\&\f(CW\*(C`aMY_CXT\*(C'\fR, \f(CW\*(C`_aMY_CXT\*(C'\fR, \f(CW\*(C`aMY_CXT_\*(C'\fR, \f(CW\*(C`ax\*(C'\fR , \f(CW\*(C`CLASS\*(C'\fR , +\&\f(CW\*(C`dAX\*(C'\fR , \f(CW\*(C`dAXMARK\*(C'\fR , \f(CW\*(C`dITEMS\*(C'\fR , \f(CW\*(C`dMY_CXT\*(C'\fR, +\&\f(CW\*(C`dMY_CXT_SV\*(C'\fR , \f(CW\*(C`dUNDERBAR\*(C'\fR , \f(CW\*(C`dXSARGS\*(C'\fR +, \f(CW\*(C`dXSI32\*(C'\fR , \f(CW\*(C`items\*(C'\fR , \f(CW\*(C`ix\*(C'\fR , \f(CW\*(C`MY_CXT\*(C'\fR, +\&\f(CW\*(C`MY_CXT_CLONE\*(C'\fR, \f(CW\*(C`MY_CXT_INIT\*(C'\fR, \f(CW\*(C`pMY_CXT\*(C'\fR, \f(CW\*(C`_pMY_CXT\*(C'\fR, \f(CW\*(C`pMY_CXT_\*(C'\fR, +\&\f(CW\*(C`RETVAL\*(C'\fR , \f(CW\*(C`ST\*(C'\fR , \f(CW\*(C`START_MY_CXT\*(C'\fR, \f(CW\*(C`THIS\*(C'\fR , +\&\f(CW\*(C`UNDERBAR\*(C'\fR , \f(CW\*(C`XS\*(C'\fR , \f(CW\*(C`XS_EXTERNAL\*(C'\fR , +\&\f(CW\*(C`XS_INTERNAL\*(C'\fR , \f(CW\*(C`XSPROTO\*(C'\fR +.IX Xref "ax CLASS dAX dAXMARK dITEMS dMY_CXT_SV dUNDERBAR dXSARGS dXSI32 items ix RETVAL ST THIS UNDERBAR XS XS_EXTERNAL XS_INTERNAL XSPROTO" +.IP "Undocumented elements" 4 +.IX Item "Undocumented elements" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlintern \- autogenerated documentation of purely \fBinternal\fP Perl functions" +.IX Subsection "perlintern - autogenerated documentation of purely internal Perl functions" +.IP DESCRIPTION 4 +.IX Xref "internal Perl functions interpreter functions" +.IX Item "DESCRIPTION" +.PD 0 +.IP "AV Handling" 4 +.IX Item "AV Handling" +.PD +\&\f(CW\*(C`av_fetch_simple\*(C'\fR , \f(CW\*(C`AvFILLp\*(C'\fR , +\&\f(CW\*(C`av_new_alloc\*(C'\fR , \f(CW\*(C`av_store_simple\*(C'\fR +.IX Xref "av_fetch_simple AvFILLp av_new_alloc av_store_simple" +.IP "Callback Functions" 4 +.IX Item "Callback Functions" +\&\f(CW\*(C`dowantarray\*(C'\fR , \f(CW\*(C`leave_scope\*(C'\fR , +\&\f(CW\*(C`magic_freedestruct\*(C'\fR , \f(CW\*(C`mortal_svfunc_x\*(C'\fR +, \f(CW\*(C`pop_scope\*(C'\fR , \f(CW\*(C`push_scope\*(C'\fR , +\&\f(CW\*(C`save_adelete\*(C'\fR , \f(CW\*(C`save_freercpv\*(C'\fR , +\&\f(CW\*(C`save_generic_pvref\*(C'\fR , \f(CW\*(C`save_generic_svref\*(C'\fR +, \f(CW\*(C`save_hdelete\*(C'\fR , \f(CW\*(C`save_hints\*(C'\fR +, \f(CW\*(C`save_op\*(C'\fR , \f(CW\*(C`save_padsv_and_mortalize\*(C'\fR +, \f(CW\*(C`save_pushptr\*(C'\fR , \f(CW\*(C`save_rcpv\*(C'\fR +, \f(CW\*(C`save_scalar_at\*(C'\fR , \f(CW\*(C`save_set_svflags\*(C'\fR +, \f(CW\*(C`save_shared_pvref\*(C'\fR , +\&\f(CW\*(C`save_vptr\*(C'\fR +.IX Xref "dowantarray leave_scope magic_freedestruct mortal_svfunc_x pop_scope push_scope save_adelete save_freercpv save_generic_pvref save_generic_svref save_hdelete save_hints save_op save_padsv_and_mortalize save_pushptr save_rcpv save_scalar_at save_set_svflags save_shared_pvref save_vptr" +.IP Casting 4 +.IX Xref "NUM2PTR" +.IX Item "Casting" +.PD 0 +.IP "Character case changing" 4 +.IX Item "Character case changing" +.IP "Character classification" 4 +.IX Item "Character classification" +.IP "Compiler and Preprocessor information" 4 +.IX Item "Compiler and Preprocessor information" +.IP "Compiler directives" 4 +.IX Item "Compiler directives" +.IP "Compile-time scope hooks" 4 +.IX Item "Compile-time scope hooks" +.PD +\&\f(CW\*(C`BhkENTRY\*(C'\fR , \f(CW\*(C`BhkFLAGS\*(C'\fR , \f(CW\*(C`CALL_BLOCK_HOOKS\*(C'\fR +.IX Xref "BhkENTRY BhkFLAGS CALL_BLOCK_HOOKS" +.IP Concurrency 4 +.IX Item "Concurrency" +\&\f(CW\*(C`CVf_SLABBED\*(C'\fR, \f(CW\*(C`CvROOT\*(C'\fR, \f(CW\*(C`CvSTART\*(C'\fR, \f(CW\*(C`CX_CUR\*(C'\fR, \f(CW\*(C`CXINC\*(C'\fR, +\&\f(CW\*(C`CX_LEAVE_SCOPE\*(C'\fR, \f(CW\*(C`CX_POP\*(C'\fR, \f(CW\*(C`cxstack\*(C'\fR, \f(CW\*(C`cxstack_ix\*(C'\fR, \f(CW\*(C`CXt_BLOCK\*(C'\fR, +\&\f(CW\*(C`CXt_EVAL\*(C'\fR, \f(CW\*(C`CXt_FORMAT\*(C'\fR, \f(CW\*(C`CXt_GIVEN\*(C'\fR, \f(CW\*(C`CXt_LOOP_ARY\*(C'\fR, +\&\f(CW\*(C`CXt_LOOP_LAZYIV\*(C'\fR, \f(CW\*(C`CXt_LOOP_LAZYSV\*(C'\fR, \f(CW\*(C`CXt_LOOP_LIST\*(C'\fR, +\&\f(CW\*(C`CXt_LOOP_PLAIN\*(C'\fR, \f(CW\*(C`CXt_NULL\*(C'\fR, \f(CW\*(C`CXt_SUB\*(C'\fR, \f(CW\*(C`CXt_SUBST\*(C'\fR, \f(CW\*(C`CXt_WHEN\*(C'\fR, +\&\f(CW\*(C`cx_type\*(C'\fR, \f(CW\*(C`dounwind\*(C'\fR, \f(CW\*(C`my_fork\*(C'\fR , \f(CW\*(C`PERL_CONTEXT\*(C'\fR +.IX Xref "my_fork" +.IP "COPs and Hint Hashes" 4 +.IX Item "COPs and Hint Hashes" +.PD 0 +.IP "Custom Operators" 4 +.IX Item "Custom Operators" +.PD +\&\f(CW\*(C`core_prototype\*(C'\fR +.IX Xref "core_prototype" +.IP "CV Handling" 4 +.IX Item "CV Handling" +\&\f(CW\*(C`CvREFCOUNTED_ANYSV\*(C'\fR , \f(CW\*(C`CvREFCOUNTED_ANYSV_off\*(C'\fR +, \f(CW\*(C`CvREFCOUNTED_ANYSV_on\*(C'\fR +, \f(CW\*(C`CvWEAKOUTSIDE\*(C'\fR , \f(CW\*(C`docatch\*(C'\fR +.IX Xref "CvREFCOUNTED_ANYSV CvREFCOUNTED_ANYSV_off CvREFCOUNTED_ANYSV_on CvWEAKOUTSIDE docatch" +.IP Debugging 4 +.IX Item "Debugging" +\&\f(CW\*(C`comma_aDEPTH\*(C'\fR , \f(CW\*(C`comma_pDEPTH\*(C'\fR , \f(CW\*(C`debop\*(C'\fR +, \f(CW\*(C`debprof\*(C'\fR , \f(CW\*(C`debprofdump\*(C'\fR , +\&\f(CW\*(C`debug_aDEPTH\*(C'\fR , \f(CW\*(C`debug_pDEPTH\*(C'\fR , +\&\f(CW\*(C`free_c_backtrace\*(C'\fR , \f(CW\*(C`get_c_backtrace\*(C'\fR +, \f(CW\*(C`PL_DBsingle\*(C'\fR , \f(CW\*(C`PL_DBsub\*(C'\fR , +\&\f(CW\*(C`PL_DBtrace\*(C'\fR , \f(CW\*(C`runops_debug\*(C'\fR, \f(CW\*(C`runops_standard\*(C'\fR +.IX Xref "comma_aDEPTH comma_pDEPTH debop debprof debprofdump debug_aDEPTH debug_pDEPTH free_c_backtrace get_c_backtrace PL_DBsingle PL_DBsub PL_DBtrace" +.IP "Display functions" 4 +.IX Xref "PERL_PV_PRETTY_DUMP PERL_PV_PRETTY_NOCLEAR PERL_PV_PRETTY_REGPROP" +.IX Item "Display functions" +\&\f(CW\*(C`sv_peek\*(C'\fR +.IX Xref "sv_peek" +.IP "Embedding, Threads, and Interpreter Cloning" 4 +.IX Item "Embedding, Threads, and Interpreter Cloning" +\&\f(CW\*(C`cv_dump\*(C'\fR , \f(CW\*(C`cv_forget_slab\*(C'\fR , \f(CW\*(C`do_dump_pad\*(C'\fR +, \f(CW\*(C`get_context\*(C'\fR , \f(CW\*(C`pad_alloc_name\*(C'\fR +, \f(CW\*(C`pad_block_start\*(C'\fR , \f(CW\*(C`pad_check_dup\*(C'\fR +, \f(CW\*(C`pad_findlex\*(C'\fR , \f(CW\*(C`pad_fixup_inner_anons\*(C'\fR +, \f(CW\*(C`pad_free\*(C'\fR , \f(CW\*(C`pad_leavemy\*(C'\fR +, \f(CW\*(C`padlist_dup\*(C'\fR , \f(CW\*(C`padname_dup\*(C'\fR +, \f(CW\*(C`padnamelist_dup\*(C'\fR , \f(CW\*(C`pad_push\*(C'\fR +, \f(CW\*(C`pad_reset\*(C'\fR , \f(CW\*(C`pad_setsv\*(C'\fR , +\&\f(CW\*(C`pad_sv\*(C'\fR , \f(CW\*(C`pad_swipe\*(C'\fR , \f(CW\*(C`set_context\*(C'\fR +, \f(CW\*(C`si_dup\*(C'\fR , \f(CW\*(C`ss_dup\*(C'\fR +.IX Xref "cv_dump cv_forget_slab do_dump_pad get_context pad_alloc_name pad_block_start pad_check_dup pad_findlex pad_fixup_inner_anons pad_free pad_leavemy padlist_dup padname_dup padnamelist_dup pad_push pad_reset pad_setsv pad_sv pad_swipe set_context si_dup ss_dup" +.IP Errno 4 +.IX Item "Errno" +\&\f(CW\*(C`dSAVEDERRNO\*(C'\fR , \f(CW\*(C`dSAVE_ERRNO\*(C'\fR , +\&\f(CW\*(C`RESTORE_ERRNO\*(C'\fR , \f(CW\*(C`SAVE_ERRNO\*(C'\fR , \f(CW\*(C`SETERRNO\*(C'\fR +.IX Xref "dSAVEDERRNO dSAVE_ERRNO RESTORE_ERRNO SAVE_ERRNO SETERRNO" +.IP "Exception Handling (simple) Macros" 4 +.IX Item "Exception Handling (simple) Macros" +.PD 0 +.IP "Filesystem configuration values" 4 +.IX Item "Filesystem configuration values" +.IP "Floating point" 4 +.IX Item "Floating point" +.IP "General Configuration" 4 +.IX Item "General Configuration" +.IP "Global Variables" 4 +.IX Item "Global Variables" +.IP "GV Handling and Stashes" 4 +.IX Xref "GV_CACHE_ONLY" +.IX Item "GV Handling and Stashes" +.PD +\&\f(CW\*(C`amagic_applies\*(C'\fR , \f(CW\*(C`gp_dup\*(C'\fR , \f(CW\*(C`gv_handler\*(C'\fR +, \f(CW\*(C`gv_stashsvpvn_cached\*(C'\fR , +\&\f(CW\*(C`gv_try_downgrade\*(C'\fR +.IX Xref "amagic_applies gp_dup gv_handler gv_stashsvpvn_cached gv_try_downgrade" +.IP "Hook manipulation" 4 +.IX Item "Hook manipulation" +.PD 0 +.IP "HV Handling" 4 +.IX Xref "HvNAME_get" +.IX Item "HV Handling" +.PD +\&\f(CW\*(C`hv_eiter_p\*(C'\fR , \f(CW\*(C`hv_eiter_set\*(C'\fR , +\&\f(CW\*(C`hv_ename_add\*(C'\fR , \f(CW\*(C`hv_ename_delete\*(C'\fR , +\&\f(CW\*(C`hv_fill\*(C'\fR , \f(CW\*(C`hv_placeholders_get\*(C'\fR , +\&\f(CW\*(C`hv_placeholders_set\*(C'\fR , \f(CW\*(C`hv_riter_p\*(C'\fR , +\&\f(CW\*(C`hv_riter_set\*(C'\fR , \f(CW\*(C`refcounted_he_chain_2hv\*(C'\fR +, \f(CW\*(C`refcounted_he_fetch_pv\*(C'\fR +, \f(CW\*(C`refcounted_he_fetch_pvn\*(C'\fR +, \f(CW\*(C`refcounted_he_fetch_pvs\*(C'\fR +, \f(CW\*(C`refcounted_he_fetch_sv\*(C'\fR +, \f(CW\*(C`refcounted_he_free\*(C'\fR , +\&\f(CW\*(C`refcounted_he_inc\*(C'\fR , \f(CW\*(C`refcounted_he_new_pv\*(C'\fR +, \f(CW\*(C`refcounted_he_new_pvn\*(C'\fR , +\&\f(CW\*(C`refcounted_he_new_pvs\*(C'\fR , \f(CW\*(C`refcounted_he_new_sv\*(C'\fR +, \f(CW\*(C`unsharepvn\*(C'\fR +.IX Xref "hv_eiter_p hv_eiter_set hv_ename_add hv_ename_delete hv_fill hv_placeholders_get hv_placeholders_set hv_riter_p hv_riter_set refcounted_he_chain_2hv refcounted_he_fetch_pv refcounted_he_fetch_pvn refcounted_he_fetch_pvs refcounted_he_fetch_sv refcounted_he_free refcounted_he_inc refcounted_he_new_pv refcounted_he_new_pvn refcounted_he_new_pvs refcounted_he_new_sv unsharepvn" +.IP Input/Output 4 +.IX Item "Input/Output" +\&\f(CW\*(C`dirp_dup\*(C'\fR , \f(CW\*(C`fp_dup\*(C'\fR , \f(CW\*(C`my_fflush_all\*(C'\fR +, \f(CW\*(C`my_mkostemp\*(C'\fR , \f(CW\*(C`my_mkstemp\*(C'\fR +, \f(CW\*(C`PL_last_in_gv\*(C'\fR , \f(CW\*(C`PL_ofsgv\*(C'\fR , +\&\f(CW\*(C`PL_rs\*(C'\fR , \f(CW\*(C`start_glob\*(C'\fR +.IX Xref "dirp_dup fp_dup my_fflush_all my_mkostemp my_mkstemp PL_last_in_gv PL_ofsgv PL_rs start_glob" +.IP Integer 4 +.IX Item "Integer" +.PD 0 +.IP "I/O Formats" 4 +.IX Item "I/O Formats" +.IP "Lexer interface" 4 +.IX Item "Lexer interface" +.PD +\&\f(CW\*(C`resume_compcv_and_save\*(C'\fR , \f(CW\*(C`resume_compcv_final\*(C'\fR +, \f(CW\*(C`validate_proto\*(C'\fR +.IX Xref "resume_compcv_and_save resume_compcv_final validate_proto" +.IP Locales 4 +.IX Item "Locales" +.PD 0 +.IP Magic 4 +.IX Item "Magic" +.PD +\&\f(CW\*(C`magic_clearhint\*(C'\fR , \f(CW\*(C`magic_clearhints\*(C'\fR +, \f(CW\*(C`magic_methcall\*(C'\fR , \f(CW\*(C`magic_sethint\*(C'\fR +, \f(CW\*(C`mg_dup\*(C'\fR , \f(CW\*(C`mg_localize\*(C'\fR +.IX Xref "magic_clearhint magic_clearhints magic_methcall magic_sethint mg_dup mg_localize" +.IP "Memory Management" 4 +.IX Item "Memory Management" +\&\f(CW\*(C`calloc\*(C'\fR , \f(CW\*(C`malloc\*(C'\fR , \f(CW\*(C`mfree\*(C'\fR , \f(CW\*(C`realloc\*(C'\fR +.IX Xref "calloc malloc mfree realloc" +.IP MRO 4 +.IX Item "MRO" +\&\f(CW\*(C`mro_get_linear_isa_dfs\*(C'\fR , \f(CW\*(C`mro_isa_changed_in\*(C'\fR +, \f(CW\*(C`mro_package_moved\*(C'\fR +.IX Xref "mro_get_linear_isa_dfs mro_isa_changed_in mro_package_moved" +.IP "Multicall Functions" 4 +.IX Item "Multicall Functions" +.PD 0 +.IP "Numeric Functions" 4 +.IX Item "Numeric Functions" +.PD +\&\f(CW\*(C`isinfnansv\*(C'\fR +.IX Xref "isinfnansv" +.IP Optrees 4 +.IX Item "Optrees" +\&\f(CW\*(C`newATTRSUB_x\*(C'\fR , \f(CW\*(C`newXS_len_flags\*(C'\fR , +\&\f(CW\*(C`op_refcnt_lock\*(C'\fR , \f(CW\*(C`op_refcnt_unlock\*(C'\fR +, \f(CW\*(C`traverse_op_tree\*(C'\fR +.IX Xref "newATTRSUB_x newXS_len_flags op_refcnt_lock op_refcnt_unlock traverse_op_tree" +.IP "Pack and Unpack" 4 +.IX Item "Pack and Unpack" +.PD 0 +.IP "Pad Data Structures" 4 +.IX Item "Pad Data Structures" +.PD +\&\f(CW\*(C`CX_CURPAD_SAVE\*(C'\fR , \f(CW\*(C`CX_CURPAD_SV\*(C'\fR , +\&\f(CW\*(C`PAD_BASE_SV\*(C'\fR , \f(CW\*(C`PAD_CLONE_VARS\*(C'\fR , +\&\f(CW\*(C`PAD_COMPNAME_FLAGS\*(C'\fR , \f(CW\*(C`PAD_COMPNAME_GEN\*(C'\fR +, \f(CW\*(C`PAD_COMPNAME_GEN_set\*(C'\fR , +\&\f(CW\*(C`PAD_COMPNAME_OURSTASH\*(C'\fR , \f(CW\*(C`PAD_COMPNAME_PV\*(C'\fR +, \f(CW\*(C`PAD_COMPNAME_TYPE\*(C'\fR , +\&\f(CW\*(C`PadnameIsFIELD\*(C'\fR , \f(CW\*(C`PadnameIsOUR\*(C'\fR , +\&\f(CW\*(C`PadnameIsSTATE\*(C'\fR , \f(CW\*(C`PadnameOURSTASH\*(C'\fR , +\&\f(CW\*(C`PadnameOUTER\*(C'\fR , \f(CW\*(C`PadnameTYPE\*(C'\fR , +\&\f(CW\*(C`PAD_RESTORE_LOCAL\*(C'\fR , \f(CW\*(C`PAD_SAVE_LOCAL\*(C'\fR +, \f(CW\*(C`PAD_SAVE_SETNULLPAD\*(C'\fR , +\&\f(CW\*(C`PAD_SET_CUR\*(C'\fR , \f(CW\*(C`PAD_SET_CUR_NOSAVE\*(C'\fR , +\&\f(CW\*(C`PAD_SETSV\*(C'\fR , \f(CW\*(C`PAD_SV\*(C'\fR , \f(CW\*(C`PAD_SVl\*(C'\fR , +\&\f(CW\*(C`SAVECLEARSV\*(C'\fR , \f(CW\*(C`SAVECOMPPAD\*(C'\fR , \f(CW\*(C`SAVEPADSV\*(C'\fR +.IX Xref "CX_CURPAD_SAVE CX_CURPAD_SV PAD_BASE_SV PAD_CLONE_VARS PAD_COMPNAME_FLAGS PAD_COMPNAME_GEN PAD_COMPNAME_GEN_set PAD_COMPNAME_OURSTASH PAD_COMPNAME_PV PAD_COMPNAME_TYPE PadnameIsFIELD PadnameIsOUR PadnameIsSTATE PadnameOURSTASH PadnameOUTER PadnameTYPE PAD_RESTORE_LOCAL PAD_SAVE_LOCAL PAD_SAVE_SETNULLPAD PAD_SET_CUR PAD_SET_CUR_NOSAVE PAD_SETSV PAD_SV PAD_SVl SAVECLEARSV SAVECOMPPAD SAVEPADSV" +.IP "Password and Group access" 4 +.IX Item "Password and Group access" +.PD 0 +.IP "Paths to system commands" 4 +.IX Item "Paths to system commands" +.IP "Prototype information" 4 +.IX Item "Prototype information" +.IP "REGEXP Functions" 4 +.IX Item "REGEXP Functions" +.PD +\&\f(CW\*(C`regnode\*(C'\fR +.IP "Reports and Formats" 4 +.IX Item "Reports and Formats" +.PD 0 +.IP Signals 4 +.IX Item "Signals" +.IP "Site configuration" 4 +.IX Item "Site configuration" +.IP "Sockets configuration values" 4 +.IX Item "Sockets configuration values" +.IP "Source Filters" 4 +.IX Item "Source Filters" +.IP "Stack Manipulation Macros" 4 +.IX Item "Stack Manipulation Macros" +.PD +\&\f(CW\*(C`djSP\*(C'\fR , \f(CW\*(C`LVRET\*(C'\fR , \f(CW\*(C`save_alloc\*(C'\fR +.IX Xref "djSP LVRET save_alloc" +.IP "String Handling" 4 +.IX Item "String Handling" +\&\f(CW\*(C`delimcpy_no_escape\*(C'\fR , \f(CW\*(C`my_cxt_init\*(C'\fR , +\&\f(CW\*(C`quadmath_format_needed\*(C'\fR , +\&\f(CW\*(C`quadmath_format_valid\*(C'\fR +.IX Xref "delimcpy_no_escape my_cxt_init quadmath_format_needed quadmath_format_valid" +.IP "SV Flags" 4 +.IX Item "SV Flags" +\&\f(CW\*(C`SVt_INVLIST\*(C'\fR +.IX Xref "SVt_INVLIST" +.IP "SV Handling" 4 +.IX Item "SV Handling" +\&\f(CW\*(C`PL_Sv\*(C'\fR , \f(CW\*(C`sv_add_arena\*(C'\fR , \f(CW\*(C`sv_2bool\*(C'\fR +, \f(CW\*(C`sv_2bool_flags\*(C'\fR , \f(CW\*(C`sv_clean_all\*(C'\fR +, \f(CW\*(C`sv_clean_objs\*(C'\fR , \f(CW\*(C`sv_free_arenas\*(C'\fR +, \f(CW\*(C`sv_grow\*(C'\fR , \f(CW\*(C`sv_grow_fresh\*(C'\fR +, \f(CW\*(C`sv_newref\*(C'\fR , \f(CW\*(C`sv_2num\*(C'\fR , +\&\f(CW\*(C`sv_pv\*(C'\fR , \f(CW\*(C`sv_pvbyte\*(C'\fR , \f(CW\*(C`sv_pvbyten_force\*(C'\fR +, \f(CW\*(C`sv_2pvbyte_nolen\*(C'\fR , +\&\f(CW\*(C`sv_pvn_force\*(C'\fR , \f(CW\*(C`sv_2pv_nolen\*(C'\fR , +\&\f(CW\*(C`sv_pvutf8n_force\*(C'\fR , \f(CW\*(C`sv_2pvutf8_nolen\*(C'\fR +, \f(CW\*(C`sv_pvutf8\*(C'\fR , \f(CW\*(C`sv_tainted\*(C'\fR +, \f(CW\*(C`SvTHINKFIRST\*(C'\fR , \f(CW\*(C`sv_true\*(C'\fR , +\&\f(CW\*(C`sv_untaint\*(C'\fR +.IX Xref "PL_Sv sv_add_arena sv_2bool sv_2bool_flags sv_clean_all sv_clean_objs sv_free_arenas sv_grow sv_grow_fresh sv_newref sv_2num sv_pv sv_pvbyte sv_pvbyten_force sv_2pvbyte_nolen sv_pvn_force sv_2pv_nolen sv_pvutf8n_force sv_2pvutf8_nolen sv_pvutf8 sv_tainted SvTHINKFIRST sv_true sv_untaint" +.IP Tainting 4 +.IX Item "Tainting" +\&\f(CW\*(C`sv_taint\*(C'\fR , \f(CW\*(C`TAINT\*(C'\fR , \f(CW\*(C`TAINT_ENV\*(C'\fR , +\&\f(CW\*(C`taint_env\*(C'\fR , \f(CW\*(C`TAINT_get\*(C'\fR , \f(CW\*(C`TAINT_IF\*(C'\fR +, \f(CW\*(C`TAINTING_get\*(C'\fR , \f(CW\*(C`TAINTING_set\*(C'\fR +, \f(CW\*(C`TAINT_NOT\*(C'\fR , \f(CW\*(C`TAINT_PROPER\*(C'\fR +, \f(CW\*(C`taint_proper\*(C'\fR , \f(CW\*(C`TAINT_set\*(C'\fR +, \f(CW\*(C`TAINT_WARN_get\*(C'\fR , \f(CW\*(C`TAINT_WARN_set\*(C'\fR +.IX Xref "sv_taint TAINT TAINT_ENV taint_env TAINT_get TAINT_IF TAINTING_get TAINTING_set TAINT_NOT TAINT_PROPER taint_proper TAINT_set TAINT_WARN_get TAINT_WARN_set" +.IP Time 4 +.IX Item "Time" +.PD 0 +.IP "Typedef names" 4 +.IX Item "Typedef names" +.IP "Unicode Support" 4 +.IX Xref "FOLDEQ_LOCALE FOLDEQ_S1_ALREADY_FOLDED FOLDEQ_S1_FOLDS_SANE FOLDEQ_ S2_ALREADY_FOLDED FOLDEQ_S2_FOLDS_SANE FOLDEQ_UTF8_NOMIX_ASCII" +.IX Item "Unicode Support" +.PD +\&\f(CW\*(C`bytes_from_utf8_loc\*(C'\fR , \f(CW\*(C`find_uninit_var\*(C'\fR +, \f(CW\*(C`isSCRIPT_RUN\*(C'\fR , +\&\f(CW\*(C`is_utf8_non_invariant_string\*(C'\fR , +\&\f(CW\*(C`utf8n_to_uvuni\*(C'\fR , \f(CW\*(C`utf8_to_uvuni\*(C'\fR , +\&\f(CW\*(C`uvoffuni_to_utf8_flags\*(C'\fR , \f(CW\*(C`valid_utf8_to_uvchr\*(C'\fR +, \f(CW\*(C`variant_under_utf8_count\*(C'\fR +.IX Xref "bytes_from_utf8_loc find_uninit_var isSCRIPT_RUN is_utf8_non_invariant_string utf8n_to_uvuni utf8_to_uvuni uvoffuni_to_utf8_flags valid_utf8_to_uvchr variant_under_utf8_count" +.IP "Utility Functions" 4 +.IX Item "Utility Functions" +\&\f(CW\*(C`my_popen_list\*(C'\fR , \f(CW\*(C`my_socketpair\*(C'\fR +.IX Xref "my_popen_list my_socketpair" +.IP Versioning 4 +.IX Item "Versioning" +.PD 0 +.IP "Warning and Dieing" 4 +.IX Item "Warning and Dieing" +.PD +\&\f(CW\*(C`deprecate\*(C'\fR , \f(CW\*(C`deprecate_disappears_in\*(C'\fR +, \f(CW\*(C`deprecate_fatal_in\*(C'\fR , +\&\f(CW\*(C`PL_dowarn\*(C'\fR , \f(CW\*(C`report_uninit\*(C'\fR +.IX Xref "deprecate deprecate_disappears_in deprecate_fatal_in PL_dowarn report_uninit" +.IP XS 4 +.IX Item "XS" +.PD 0 +.IP "Undocumented elements" 4 +.IX Item "Undocumented elements" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perliol \- C API for Perl's implementation of IO in Layers." +.IX Subsection "perliol - C API for Perl's implementation of IO in Layers." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "History and Background" 4 +.IX Item "History and Background" +.IP "Basic Structure" 4 +.IX Item "Basic Structure" +.IP "Layers vs Disciplines" 4 +.IX Item "Layers vs Disciplines" +.IP "Data Structures" 4 +.IX Item "Data Structures" +.IP "Functions and Attributes" 4 +.IX Item "Functions and Attributes" +.IP "Per-instance Data" 4 +.IX Item "Per-instance Data" +.IP "Layers in action." 4 +.IX Item "Layers in action." +.IP "Per-instance flag bits" 4 +.IX Item "Per-instance flag bits" +.PD +PERLIO_F_EOF, PERLIO_F_CANWRITE, PERLIO_F_CANREAD, PERLIO_F_ERROR, +PERLIO_F_TRUNCATE, PERLIO_F_APPEND, PERLIO_F_CRLF, PERLIO_F_UTF8, +PERLIO_F_UNBUF, PERLIO_F_WRBUF, PERLIO_F_RDBUF, PERLIO_F_LINEBUF, +PERLIO_F_TEMP, PERLIO_F_OPEN, PERLIO_F_FASTGETS +.IP "Methods in Detail" 4 +.IX Item "Methods in Detail" +fsize, name, size, kind, PERLIO_K_BUFFERED, PERLIO_K_RAW, PERLIO_K_CANCRLF, +PERLIO_K_FASTGETS, PERLIO_K_MULTIARG, Pushed, Popped, Open, Binmode, +Getarg, Fileno, Dup, Read, Write, Seek, Tell, Close, Flush, Fill, Eof, +Error, Clearerr, Setlinebuf, Get_base, Get_bufsiz, Get_ptr, Get_cnt, +Set_ptrcnt +.IP Utilities 4 +.IX Item "Utilities" +.PD 0 +.IP "Implementing PerlIO Layers" 4 +.IX Item "Implementing PerlIO Layers" +.PD +C implementations, Perl implementations +.IP "Core Layers" 4 +.IX Item "Core Layers" +"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8" +.IP "Extension Layers" 4 +.IX Item "Extension Layers" +":encoding", ":scalar", ":via" +.RE +.RS 4 +.RE +.IP TODO 4 +.IX Item "TODO" +.SS "perlapio \- perl's IO abstraction interface." +.IX Subsection "perlapio - perl's IO abstraction interface." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +1. USE_STDIO, 2. USE_PERLIO, \fBPerlIO_stdin()\fR, \fBPerlIO_stdout()\fR, +\&\fBPerlIO_stderr()\fR, \fBPerlIO_open(path, mode)\fR, \fBPerlIO_fdopen(fd,mode)\fR, +\&\fBPerlIO_reopen(path,mode,f)\fR, \fBPerlIO_printf(f,fmt,...)\fR, +\&\fBPerlIO_vprintf(f,fmt,a)\fR, \fBPerlIO_stdoutf(fmt,...)\fR, +\&\fBPerlIO_read(f,buf,count)\fR, \fBPerlIO_write(f,buf,count)\fR, +\&\fBPerlIO_fill(f)\fR, \fBPerlIO_close(f)\fR, \fBPerlIO_puts(f,s)\fR, +\&\fBPerlIO_putc(f,c)\fR, \fBPerlIO_ungetc(f,c)\fR, \fBPerlIO_unread(f,buf,count)\fR, +\&\fBPerlIO_getc(f)\fR, \fBPerlIO_eof(f)\fR, \fBPerlIO_error(f)\fR, +\&\fBPerlIO_fileno(f)\fR, \fBPerlIO_clearerr(f)\fR, \fBPerlIO_flush(f)\fR, +\&\fBPerlIO_seek(f,offset,whence)\fR, \fBPerlIO_tell(f)\fR, \fBPerlIO_getpos(f,p)\fR, +\&\fBPerlIO_setpos(f,p)\fR, \fBPerlIO_rewind(f)\fR, \fBPerlIO_tmpfile()\fR, +\&\fBPerlIO_setlinebuf(f)\fR +.RS 4 +.IP "Co-existence with stdio" 4 +.IX Item "Co-existence with stdio" +\&\fBPerlIO_importFILE(f,mode)\fR, \fBPerlIO_exportFILE(f,mode)\fR, +\&\fBPerlIO_releaseFILE(p,f)\fR, \fBPerlIO_findFILE(f)\fR +.IP """Fast gets"" Functions" 4 +.IX Item """Fast gets"" Functions" +\&\fBPerlIO_fast_gets(f)\fR, \fBPerlIO_has_cntptr(f)\fR, \fBPerlIO_get_cnt(f)\fR, +\&\fBPerlIO_get_ptr(f)\fR, \fBPerlIO_set_ptrcnt(f,p,c)\fR, \fBPerlIO_canset_cnt(f)\fR, +\&\fBPerlIO_set_cnt(f,c)\fR, \fBPerlIO_has_base(f)\fR, \fBPerlIO_get_base(f)\fR, +\&\fBPerlIO_get_bufsiz(f)\fR +.IP "Other Functions" 4 +.IX Item "Other Functions" +PerlIO_apply_layers(aTHX_ f,mode,layers), PerlIO_binmode(aTHX_ +f,ptype,imode,layers), '<' read, '>' write, '+' read/write, +PerlIO_debug(fmt,...) +.RE +.RS 4 +.RE +.SS "perlhack \- How to hack on Perl" +.IX Subsection "perlhack - How to hack on Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "SUPER QUICK PATCH GUIDE" 4 +.IX Item "SUPER QUICK PATCH GUIDE" +.PD +Check out the source repository, Ensure you're following the latest advice, +Create a branch for your change, Make your change, Test your change, Commit +your change, Send your change to the Perl issue tracker, Thank you, +Acknowledgement, Next time +.IP "BUG REPORTING" 4 +.IX Item "BUG REPORTING" +.PD 0 +.IP "PERL 5 PORTERS" 4 +.IX Item "PERL 5 PORTERS" +.RS 4 +.IP "perl-changes mailing list" 4 +.IX Item "perl-changes mailing list" +.IP "#p5p on IRC" 4 +.IX Item "#p5p on IRC" +.RE +.RS 4 +.RE +.IP "GETTING THE PERL SOURCE" 4 +.IX Item "GETTING THE PERL SOURCE" +.RS 4 +.IP "Read access via Git" 4 +.IX Item "Read access via Git" +.IP "Read access via the web" 4 +.IX Item "Read access via the web" +.IP "Write access via git" 4 +.IX Item "Write access via git" +.RE +.RS 4 +.RE +.IP "PATCHING PERL" 4 +.IX Item "PATCHING PERL" +.RS 4 +.IP "Submitting patches" 4 +.IX Item "Submitting patches" +.IP "Getting your patch accepted" 4 +.IX Item "Getting your patch accepted" +.PD +Why, What, How +.IP "Patching a core module" 4 +.IX Item "Patching a core module" +.PD 0 +.IP "Updating perldelta" 4 +.IX Item "Updating perldelta" +.IP "What makes for a good patch?" 4 +.IX Item "What makes for a good patch?" +.RE +.RS 4 +.RE +.IP TESTING 4 +.IX Item "TESTING" +.PD +\&\fIt/base\fR, \fIt/comp\fR and \fIt/opbasic\fR, All other subdirectories of \fIt/\fR, +Test files not found under \fIt/\fR +.RS 4 +.ie n .IP "Special ""make test"" targets" 4 +.el .IP "Special \f(CWmake test\fR targets" 4 +.IX Item "Special make test targets" +test_porting, minitest, test.valgrind check.valgrind, test_harness, +test-notty test_notty +.IP "Parallel tests" 4 +.IX Item "Parallel tests" +.PD 0 +.IP "Running tests by hand" 4 +.IX Item "Running tests by hand" +.IP "Using \fIt/harness\fR for testing" 4 +.IX Item "Using t/harness for testing" +.PD +\&\-v, \-torture, \-re=PATTERN, \-re LIST OF PATTERNS, PERL_CORE=1, +PERL_DESTRUCT_LEVEL=2, PERL, PERL_SKIP_TTY_TEST, PERL_TEST_Net_Ping, +PERL_TEST_NOVREXX, PERL_TEST_NUMCONVERTS, PERL_TEST_MEMORY +.IP "Performance testing" 4 +.IX Item "Performance testing" +.PD 0 +.IP "Building perl at older commits" 4 +.IX Item "Building perl at older commits" +.RE +.RS 4 +.RE +.IP "MORE READING FOR GUTS HACKERS" 4 +.IX Item "MORE READING FOR GUTS HACKERS" +.PD +perlsource, perlinterp, perlhacktut, perlhacktips, perlguts, +perlxstut and perlxs, perlapi, \fIPorting/pumpkin.pod\fR +.IP "CPAN TESTERS AND PERL SMOKERS" 4 +.IX Item "CPAN TESTERS AND PERL SMOKERS" +.PD 0 +.IP "WHAT NEXT?" 4 +.IX Item "WHAT NEXT?" +.RS 4 +.IP """The Road goes ever on and on, down from the door where it began.""" 4 +.IX Item """The Road goes ever on and on, down from the door where it began.""" +.IP "Metaphoric Quotations" 4 +.IX Item "Metaphoric Quotations" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlsource \- A guide to the Perl source tree" +.IX Subsection "perlsource - A guide to the Perl source tree" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "FINDING YOUR WAY AROUND" 4 +.IX Item "FINDING YOUR WAY AROUND" +.RS 4 +.IP "C code" 4 +.IX Item "C code" +.IP "Core modules" 4 +.IX Item "Core modules" +.PD +\&\fIlib/\fR, \fIext/\fR, \fIdist/\fR, \fIcpan/\fR +.IP Tests 4 +.IX Item "Tests" +Module tests, \fIt/base/\fR, \fIt/cmd/\fR, \fIt/comp/\fR, \fIt/io/\fR, \fIt/mro/\fR, +\&\fIt/op/\fR, \fIt/opbasic/\fR, \fIt/re/\fR, \fIt/run/\fR, \fIt/uni/\fR, \fIt/win32/\fR, +\&\fIt/porting/\fR, \fIt/lib/\fR +.IP Documentation 4 +.IX Item "Documentation" +.PD 0 +.IP "Hacking tools and documentation" 4 +.IX Item "Hacking tools and documentation" +.PD +\&\fIcheck*\fR, \fIMaintainers\fR, \fIMaintainers.pl\fR, and \fIMaintainers.pm\fR, +\&\fIpodtidy\fR +.IP "Build system" 4 +.IX Item "Build system" +.PD 0 +.IP \fIAUTHORS\fR 4 +.IX Item "AUTHORS" +.IP \fIMANIFEST\fR 4 +.IX Item "MANIFEST" +.RE +.RS 4 +.RE +.PD +.SS "perlinterp \- An overview of the Perl interpreter" +.IX Subsection "perlinterp - An overview of the Perl interpreter" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "ELEMENTS OF THE INTERPRETER" 4 +.IX Item "ELEMENTS OF THE INTERPRETER" +.RS 4 +.IP Startup 4 +.IX Item "Startup" +.IP Parsing 4 +.IX Item "Parsing" +.IP Optimization 4 +.IX Item "Optimization" +.IP Running 4 +.IX Item "Running" +.IP "Exception handing" 4 +.IX Item "Exception handing" +.PD +level 2: perl-level \fBexit()\fR and internals \fBmy_exit()\fR, level 3: perl-level +\&\fBdie()\fR and internals \fBcroak()\fR, level 1: unused, level 0: normal return +.IP "INTERNAL VARIABLE TYPES" 4 +.IX Item "INTERNAL VARIABLE TYPES" +.RE +.RS 4 +.RE +.PD 0 +.IP "OP TREES" 4 +.IX Item "OP TREES" +.IP STACKS 4 +.IX Item "STACKS" +.RS 4 +.IP "Argument stack" 4 +.IX Item "Argument stack" +.IP "Mark stack" 4 +.IX Item "Mark stack" +.IP "Save stack" 4 +.IX Item "Save stack" +.RE +.RS 4 +.RE +.IP "MILLIONS OF MACROS" 4 +.IX Item "MILLIONS OF MACROS" +.IP "FURTHER READING" 4 +.IX Item "FURTHER READING" +.PD +.SS "perlhacktut \- Walk through the creation of a simple C code patch" +.IX Subsection "perlhacktut - Walk through the creation of a simple C code patch" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "EXAMPLE OF A SIMPLE PATCH" 4 +.IX Item "EXAMPLE OF A SIMPLE PATCH" +.RS 4 +.IP "Writing the patch" 4 +.IX Item "Writing the patch" +.IP "Testing the patch" 4 +.IX Item "Testing the patch" +.IP "Documenting the patch" 4 +.IX Item "Documenting the patch" +.IP Submit 4 +.IX Item "Submit" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlhacktips \- Tips for Perl core C code hacking" +.IX Subsection "perlhacktips - Tips for Perl core C code hacking" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "COMMON PROBLEMS" 4 +.IX Item "COMMON PROBLEMS" +.RS 4 +.IP "Perl environment problems" 4 +.IX Item "Perl environment problems" +.IP C99 4 +.IX Item "C99" +.PD +AIX, HP/UX, Solaris +.IP "Symbol Names and Namespace Pollution" 4 +.IX Item "Symbol Names and Namespace Pollution" +\&\fBDon't begin a symbol name with an underscore\fR; (\fIe.g.\fR, don't use: +\&\f(CW\*(C`_FOOBAR\*(C'\fR), \fBDon't use two consecutive underscores in a symbol name\fR; +(\fIe.g.\fR, don't use \f(CW\*(C`FOO_\|_BAR\*(C'\fR) +.IP "Writing safer macros" 4 +.IX Item "Writing safer macros" +.PD 0 +.IP "Portability problems" 4 +.IX Item "Portability problems" +.IP "Problematic System Interfaces" 4 +.IX Item "Problematic System Interfaces" +.IP "Security problems" 4 +.IX Item "Security problems" +.RE +.RS 4 +.RE +.IP DEBUGGING 4 +.IX Item "DEBUGGING" +.RS 4 +.IP "Poking at Perl" 4 +.IX Item "Poking at Perl" +.IP "Using a source-level debugger" 4 +.IX Item "Using a source-level debugger" +.PD +run [args], break function_name, break source.c:xxx, step, next, continue, +finish, 'enter', ptype, print +.IP "gdb macro support" 4 +.IX Item "gdb macro support" +.PD 0 +.IP "Dumping Perl Data Structures" 4 +.IX Item "Dumping Perl Data Structures" +.IP "Using gdb to look at specific parts of a program" 4 +.IX Item "Using gdb to look at specific parts of a program" +.IP "Using gdb to look at what the parser/lexer are doing" 4 +.IX Item "Using gdb to look at what the parser/lexer are doing" +.RE +.RS 4 +.RE +.IP "SOURCE CODE STATIC ANALYSIS" 4 +.IX Item "SOURCE CODE STATIC ANALYSIS" +.RS 4 +.IP lint 4 +.IX Item "lint" +.IP Coverity 4 +.IX Item "Coverity" +.IP "HP-UX cadvise (Code Advisor)" 4 +.IX Item "HP-UX cadvise (Code Advisor)" +.IP "cpd (cut-and-paste detector)" 4 +.IX Item "cpd (cut-and-paste detector)" +.IP "gcc warnings" 4 +.IX Item "gcc warnings" +.IP "Warnings of other C compilers" 4 +.IX Item "Warnings of other C compilers" +.RE +.RS 4 +.RE +.IP "MEMORY DEBUGGERS" 4 +.IX Item "MEMORY DEBUGGERS" +.RS 4 +.IP valgrind 4 +.IX Item "valgrind" +.IP AddressSanitizer 4 +.IX Item "AddressSanitizer" +.PD +\&\-Dcc=clang, \-Accflags=\-fsanitize=address, \-Aldflags=\-fsanitize=address, +\&\-Alddlflags=\-shared\e \-fsanitize=address, +\&\-fsanitize\-blacklist=`pwd`/asan_ignore +.RE +.RS 4 +.RE +.IP PROFILING 4 +.IX Item "PROFILING" +.RS 4 +.PD 0 +.IP "Gprof Profiling" 4 +.IX Item "Gprof Profiling" +.PD +\&\-a, \-b, \-e routine, \-f routine, \-s, \-z +.IP "GCC gcov Profiling" 4 +.IX Item "GCC gcov Profiling" +.PD 0 +.IP "callgrind profiling" 4 +.IX Item "callgrind profiling" +.PD +\&\-\-threshold, \-\-auto +.RE +.RS 4 +.RE +.IP "MISCELLANEOUS TRICKS" 4 +.IX Item "MISCELLANEOUS TRICKS" +.RS 4 +.PD 0 +.IP PERL_DESTRUCT_LEVEL 4 +.IX Item "PERL_DESTRUCT_LEVEL" +.IP PERL_MEM_LOG 4 +.IX Item "PERL_MEM_LOG" +.IP "DDD over gdb" 4 +.IX Item "DDD over gdb" +.IP "C backtrace" 4 +.IX Item "C backtrace" +.PD +Linux, OS X, get_c_backtrace, free_c_backtrace, get_c_backtrace_dump, +dump_c_backtrace +.IP Poison 4 +.IX Item "Poison" +.PD 0 +.IP "Read-only optrees" 4 +.IX Item "Read-only optrees" +.IP "When is a bool not a bool?" 4 +.IX Item "When is a bool not a bool?" +.IP "Finding unsafe truncations" 4 +.IX Item "Finding unsafe truncations" +.IP "The .i Targets" 4 +.IX Item "The .i Targets" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlpolicy \- Various and sundry policies and commitments related to the Perl core" +.IX Subsection "perlpolicy - Various and sundry policies and commitments related to the Perl core" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP GOVERNANCE 4 +.IX Item "GOVERNANCE" +.RS 4 +.IP "Perl 5 Porters" 4 +.IX Item "Perl 5 Porters" +.RE +.RS 4 +.RE +.IP "MAINTENANCE AND SUPPORT" 4 +.IX Item "MAINTENANCE AND SUPPORT" +.IP "BACKWARD COMPATIBILITY AND DEPRECATION" 4 +.IX Item "BACKWARD COMPATIBILITY AND DEPRECATION" +.RS 4 +.IP Terminology 4 +.IX Item "Terminology" +.PD +experimental, deprecated, discouraged, removed +.RE +.RS 4 +.RE +.IP "MAINTENANCE BRANCHES" 4 +.IX Item "MAINTENANCE BRANCHES" +.RS 4 +.PD 0 +.IP "Getting changes into a maint branch" 4 +.IX Item "Getting changes into a maint branch" +.RE +.RS 4 +.RE +.IP "CONTRIBUTED MODULES" 4 +.IX Item "CONTRIBUTED MODULES" +.RS 4 +.IP "A Social Contract about Artistic Control" 4 +.IX Item "A Social Contract about Artistic Control" +.RE +.RS 4 +.RE +.IP DOCUMENTATION 4 +.IX Item "DOCUMENTATION" +.IP "STANDARDS OF CONDUCT" 4 +.IX Item "STANDARDS OF CONDUCT" +.IP CREDITS 4 +.IX Item "CREDITS" +.PD +.SS "perlgov \- Perl Rules of Governance" +.IX Subsection "perlgov - Perl Rules of Governance" +.IP PREAMBLE 4 +.IX Item "PREAMBLE" +.PD 0 +.IP Mandate 4 +.IX Item "Mandate" +.IP Definitions 4 +.IX Item "Definitions" +.PD +"Core Team", "Steering Council", "Vote Administrator" +.RS 4 +.IP "The Core Team" 4 +.IX Item "The Core Team" +.PD 0 +.IP "The Steering Council" 4 +.IX Item "The Steering Council" +.IP "The Vote Administrator" 4 +.IX Item "The Vote Administrator" +.RE +.RS 4 +.RE +.IP "Steering Council and Core Team Members" 4 +.IX Item "Steering Council and Core Team Members" +.IP "Steering Council Members" 4 +.IX Item "Steering Council Members" +.PD +Paul Evans, Philippe Bruhat, Ricardo Signes +.IP "Core Team Members" 4 +.IX Item "Core Team Members" +.RS 4 +.PD 0 +.IP "Active Members" 4 +.IX Item "Active Members" +.PD +Chad Granum <exodist7@gmail.com>, Chris 'BinGOs' Williams +<chris@bingosnet.co.uk>, Craig Berry <craigberry@mac.com>, Dagfinn Ilmari +Mannsåker <ilmari@ilmari.org>, David Mitchell <davem@iabyn.com>, Graham +Knop <haarg@haarg.org>, H. Merijn Brand <perl5@tux.freedom.nl>, Hugo van +der Sanden <hv@crypt.org>, James E Keenan <jkeenan@cpan.org>, Karen +Etheridge <ether@cpan.org>, Karl Williamson <khw@cpan.org>, Leon Timmermans +<fawaka@gmail.com>, Matthew Horsfall <wolfsage@gmail.com>, Max Maischein +<cpan@corion.net>, Neil Bowers <neilb@neilb.org>, Nicholas Clark +<nick@ccl4.org>, Nicolas R <atoomic@cpan.org>, Paul "LeoNerd" Evans +<leonerd@leonerd.org.uk>, Philippe "BooK" Bruhat <book@cpan.org>, Ricardo +Signes <rjbs@semiotic.systems>, Steve Hay <steve.m.hay@googlemail.com>, +Stuart Mackintosh <stuart@perlfoundation.org>, Todd Rinaldo +<toddr@cpanel.net>, Tony Cook <tony@develop\-help.com>, Yves Orton +<demerphq@gmail.com> +.IP "Inactive Members" 4 +.IX Item "Inactive Members" +Abhijit Menon-Sen <ams@toroid.org>, Andy Dougherty +<doughera@lafayette.edu>, David Golden <xdg@xdg.me>, Jan Dubois +<jan@jandubois.com>, Jason McIntosh <jmac@jmac.org>, Jesse Vincent +<jesse@fsck.com> +.RE +.RS 4 +.RE +.SS "perlgit \- Detailed information about git and the Perl repository" +.IX Subsection "perlgit - Detailed information about git and the Perl repository" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "CLONING THE REPOSITORY" 4 +.IX Item "CLONING THE REPOSITORY" +.IP "WORKING WITH THE REPOSITORY" 4 +.IX Item "WORKING WITH THE REPOSITORY" +.RS 4 +.IP "Finding out your status" 4 +.IX Item "Finding out your status" +.IP "Patch workflow" 4 +.IX Item "Patch workflow" +.IP "A note on derived files" 4 +.IX Item "A note on derived files" +.IP "Cleaning a working directory" 4 +.IX Item "Cleaning a working directory" +.IP Bisecting 4 +.IX Item "Bisecting" +.IP "Topic branches and rewriting history" 4 +.IX Item "Topic branches and rewriting history" +.IP Grafts 4 +.IX Item "Grafts" +.RE +.RS 4 +.RE +.IP "WRITE ACCESS TO THE GIT REPOSITORY" 4 +.IX Item "WRITE ACCESS TO THE GIT REPOSITORY" +.RS 4 +.IP "Working with Github pull requests" 4 +.IX Item "Working with Github pull requests" +.IP "Accepting a patch" 4 +.IX Item "Accepting a patch" +.IP "Committing to blead" 4 +.IX Item "Committing to blead" +.IP "On merging and rebasing" 4 +.IX Item "On merging and rebasing" +.IP "Committing to maintenance versions" 4 +.IX Item "Committing to maintenance versions" +.IP "Using a smoke-me branch to test changes" 4 +.IX Item "Using a smoke-me branch to test changes" +.RE +.RS 4 +.RE +.PD +.SS "perlhist \- the Perl history records" +.IX Subsection "perlhist - the Perl history records" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP INTRODUCTION 4 +.IX Item "INTRODUCTION" +.IP "THE KEEPERS OF THE PUMPKIN" 4 +.IX Item "THE KEEPERS OF THE PUMPKIN" +.RS 4 +.IP PUMPKIN? 4 +.IX Item "PUMPKIN?" +.RE +.RS 4 +.RE +.IP "THE RECORDS" 4 +.IX Item "THE RECORDS" +.RS 4 +.IP "SELECTED RELEASE SIZES" 4 +.IX Item "SELECTED RELEASE SIZES" +.IP "SELECTED PATCH SIZES" 4 +.IX Item "SELECTED PATCH SIZES" +.RE +.RS 4 +.RE +.IP "THE KEEPERS OF THE RECORDS" 4 +.IX Item "THE KEEPERS OF THE RECORDS" +.PD +.SS "perldelta \- what is new for perl v5.38.2" +.IX Subsection "perldelta - what is new for perl v5.38.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5382delta, perldelta \- what is new for perl v5.38.2" +.IX Subsection "perl5382delta, perldelta - what is new for perl v5.38.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5381delta \- what is new for perl v5.38.1" +.IX Subsection "perl5381delta - what is new for perl v5.38.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5380delta \- what is new for perl v5.38.0" +.IX Subsection "perl5380delta - what is new for perl v5.38.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP "New ""class"" Feature" 4 +.el .IP "New \f(CWclass\fR Feature" 4 +.IX Item "New class Feature" +.IP "Unicode 15.0 is supported" 4 +.IX Item "Unicode 15.0 is supported" +.IP "Deprecation warnings now have specific subcategories" 4 +.IX Item "Deprecation warnings now have specific subcategories" +.IP "%{^HOOK} API introduced" 4 +.IX Item "%{^HOOK} API introduced" +.IP PERL_RAND_SEED 4 +.IX Item "PERL_RAND_SEED" +.IP "Defined-or and logical-or assignment default expressions in signatures" 4 +.IX Item "Defined-or and logical-or assignment default expressions in signatures" +.ie n .IP "@INC Hook Enhancements and $INC and INCDIR" 4 +.el .IP "\f(CW@INC\fR Hook Enhancements and \f(CW$INC\fR and INCDIR" 4 +.IX Item "@INC Hook Enhancements and $INC and INCDIR" +.ie n .IP "Forbidden control flow out of ""defer"" or ""finally"" now detected at compile-time" 4 +.el .IP "Forbidden control flow out of \f(CWdefer\fR or \f(CWfinally\fR now detected at compile-time" 4 +.IX Item "Forbidden control flow out of defer or finally now detected at compile-time" +.IP "Optimistic Eval in Patterns" 4 +.IX Item "Optimistic Eval in Patterns" +.IP "REG_INF has been raised from 65,536 to 2,147,483,647" 4 +.IX Item "REG_INF has been raised from 65,536 to 2,147,483,647" +.IP "New API functions optimize_optree and finalize_optree" 4 +.IX Item "New API functions optimize_optree and finalize_optree" +.ie n .IP "Some ""goto""s are now permitted in ""defer"" and ""finally"" blocks" 4 +.el .IP "Some \f(CWgoto\fRs are now permitted in \f(CWdefer\fR and \f(CWfinally\fR blocks" 4 +.IX Item "Some gotos are now permitted in defer and finally blocks" +.IP "New regexp variable ${^LAST_SUCCESSFUL_PATTERN}" 4 +.IX Item "New regexp variable ${^LAST_SUCCESSFUL_PATTERN}" +.IP "Locale category LC_NAME now supported on participating platforms" 4 +.IX Item "Locale category LC_NAME now supported on participating platforms" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "\fBreadline()\fR no longer clears the stream error and eof flags" 4 +.IX Item "readline() no longer clears the stream error and eof flags" +.ie n .IP """INIT"" blocks no longer run after an exit() in ""BEGIN""" 4 +.el .IP "\f(CWINIT\fR blocks no longer run after an \f(CWexit()\fR in \f(CWBEGIN\fR" 4 +.IX Item "INIT blocks no longer run after an exit() in BEGIN" +.IP "Syntax errors no longer produce ""phantom error messages""" 4 +.IX Item "Syntax errors no longer produce ""phantom error messages""" +.ie n .IP utf8::upgrade() 4 +.el .IP \f(CWutf8::upgrade()\fR 4 +.IX Item "utf8::upgrade()" +.IP "Changes to ""thread-safe"" locales" 4 +.IX Item "Changes to ""thread-safe"" locales" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP "Use of ""\*(Aq"" as a package name separator is deprecated" 4 +.el .IP "Use of \f(CW\*(Aq\fR as a package name separator is deprecated" 4 +.IX Item "Use of as a package name separator is deprecated" +.IP "Switch and Smart Match operator" 4 +.IX Item "Switch and Smart Match operator" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.PD +Ultrix +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +DragonflyBSD, FreeBSD, Solaris, Synology, Windows +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +\&\f(CW\*(C`newSVbool(const bool bool_val)\*(C'\fR, +\&\f(CWnewSV_true()\fR, +\&\f(CWnewSV_false()\fR, \f(CW\*(C`sv_set_true(SV +*sv)\*(C'\fR, \f(CW\*(C`sv_set_false(SV +*sv)\*(C'\fR, \f(CW\*(C`sv_set_bool(SV *sv, const bool +bool_val)\*(C'\fR, \f(CWSvIandPOK(sv)\fR, +\&\f(CWSvIandPOK_off(sv)\fR, +\&\f(CW\*(C`SvIandPOK_on\*(C'\fR, I32df \-\- Like \f(CW%d\fR, U32of \-\- Like +\&\f(CW%o\fR, U32uf \-\- Like \f(CW%u\fR, U32xf \-\- Like \f(CW%x\fR, U32Xf \-\- Like \f(CW%X\fR +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5363delta \- what is new for perl v5.36.3" +.IX Subsection "perl5363delta - what is new for perl v5.36.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5362delta \- what is new for perl v5.36.2" +.IX Subsection "perl5362delta - what is new for perl v5.36.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5361delta \- what is new for perl v5.36.1" +.IX Subsection "perl5361delta - what is new for perl v5.36.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5360delta \- what is new for perl v5.36.0" +.IX Subsection "perl5360delta - what is new for perl v5.36.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP """use v5.36""" 4 +.el .IP "\f(CWuse v5.36\fR" 4 +.IX Item "use v5.36" +.IP "\-g command-line flag" 4 +.IX Item "-g command-line flag" +.IP "Unicode 14.0 is supported" 4 +.IX Item "Unicode 14.0 is supported" +.IP "regex sets are no longer considered experimental" 4 +.IX Item "regex sets are no longer considered experimental" +.IP "Variable length lookbehind is mostly no longer considered experimental" 4 +.IX Item "Variable length lookbehind is mostly no longer considered experimental" +.IP "SIGFPE no longer deferred" 4 +.IX Item "SIGFPE no longer deferred" +.IP "Stable boolean tracking" 4 +.IX Item "Stable boolean tracking" +.IP "iterating over multiple values at a time (experimental)" 4 +.IX Item "iterating over multiple values at a time (experimental)" +.IP "builtin functions (experimental)" 4 +.IX Item "builtin functions (experimental)" +.PD +builtin::trim, builtin::indexed, builtin::true, builtin::false, +builtin::is_bool, builtin::weaken, builtin::unweaken, builtin::is_weak, +builtin::blessed, builtin::refaddr, builtin::reftype, builtin::ceil, +builtin::floor +.ie n .IP """defer"" blocks (experimental)" 4 +.el .IP "\f(CWdefer\fR blocks (experimental)" 4 +.IX Item "defer blocks (experimental)" +.PD 0 +.ie n .IP "try/catch can now have a ""finally"" block (experimental)" 4 +.el .IP "try/catch can now have a \f(CWfinally\fR block (experimental)" 4 +.IX Item "try/catch can now have a finally block (experimental)" +.IP "non-ASCII delimiters for quote-like operators (experimental)" 4 +.IX Item "non-ASCII delimiters for quote-like operators (experimental)" +.ie n .IP "@_ is now experimental within signatured subs" 4 +.el .IP "\f(CW@_\fR is now experimental within signatured subs" 4 +.IX Item "@_ is now experimental within signatured subs" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "A physically empty sort is now a compile-time error" 4 +.IX Item "A physically empty sort is now a compile-time error" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP """use VERSION"" (where VERSION is below v5.11) after ""use v5.11"" is deprecated" 4 +.el .IP "\f(CWuse VERSION\fR (where VERSION is below v5.11) after \f(CWuse v5.11\fR is deprecated" 4 +.IX Item "use VERSION (where VERSION is below v5.11) after use v5.11 is deprecated" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP Windows 4 +.IX Item "Windows" +.IP VMS 4 +.IX Item "VMS" +.PD +\&\f(CW\*(C`keys %ENV\*(C'\fR on VMS returns consistent results +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +AT&T UWIN, DOS/DJGPP, NetWare +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +z/OS +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Errata From Previous Releases" 4 +.IX Item "Errata From Previous Releases" +.IP Obituaries 4 +.IX Item "Obituaries" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5343delta \- what is new for perl v5.34.3" +.IX Subsection "perl5343delta - what is new for perl v5.34.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5342delta \- what is new for perl v5.34.2" +.IX Subsection "perl5342delta - what is new for perl v5.34.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2023\-47038 \- Write past buffer end via illegal user-defined Unicode property" 4 +.IX Item "CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property" +.IP "CVE\-2023\-47039 \- Perl for Windows binary hijacking vulnerability" 4 +.IX Item "CVE-2023-47039 - Perl for Windows binary hijacking vulnerability" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5341delta \- what is new for perl v5.34.1" +.IX Subsection "perl5341delta - what is new for perl v5.34.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Windows +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5340delta \- what is new for perl v5.34.0" +.IX Subsection "perl5340delta - what is new for perl v5.34.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Experimental Try/Catch Syntax" 4 +.IX Item "Experimental Try/Catch Syntax" +.ie n .IP """qr/{,n}/"" is now accepted" 4 +.el .IP "\f(CWqr/{,n}/\fR is now accepted" 4 +.IX Item "qr/{,n}/ is now accepted" +.RE +.RS 4 +.RE +.IP "Blanks freely allowed within but adjacent to curly braces" 4 +.IX Item "Blanks freely allowed within but adjacent to curly braces" +.ie n .IP "New octal syntax ""0o\fIddddd\fR""" 4 +.el .IP "New octal syntax \f(CW0o\fR\f(CIddddd\fR\f(CW\fR" 4 +.IX Item "New octal syntax 0oddddd" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "perl5db.pl (the debugger)" 4 +.IX Item "perl5db.pl (the debugger)" +.PD +New option: \f(CW\*(C`HistItemMinLength\*(C'\fR, Fix to \f(CW\*(C`i\*(C'\fR and \f(CW\*(C`l\*(C'\fR commands +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +stadtx hash support has been removed, Configure, \f(CW\*(C`\-Dusedefaultstrict\*(C'\fR +.IP Testing 4 +.IX Item "Testing" +.PD 0 +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.PD +9front +.IP "Updated Platforms" 4 +.IX Item "Updated Platforms" +Plan9, MacOS (Darwin) +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +Symbian +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +DragonFlyBSD, Mac OS X, Windows, z/OS +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD +pack/unpack format 'D' now works on all systems that could support it +.IP "Known Problems" 4 +.IX Item "Known Problems" +.PD 0 +.IP "Errata From Previous Releases" 4 +.IX Item "Errata From Previous Releases" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5321delta \- what is new for perl v5.32.1" +.IX Subsection "perl5321delta - what is new for perl v5.32.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +MacOS (Darwin), Minix +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5320delta \- what is new for perl v5.32.0" +.IX Subsection "perl5320delta - what is new for perl v5.32.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "The isa Operator" 4 +.IX Item "The isa Operator" +.IP "Unicode 13.0 is supported" 4 +.IX Item "Unicode 13.0 is supported" +.IP "Chained comparisons capability" 4 +.IX Item "Chained comparisons capability" +.ie n .IP "New Unicode properties ""Identifier_Status"" and ""Identifier_Type"" supported" 4 +.el .IP "New Unicode properties \f(CWIdentifier_Status\fR and \f(CWIdentifier_Type\fR supported" 4 +.IX Item "New Unicode properties Identifier_Status and Identifier_Type supported" +.ie n .IP "It is now possible to write ""qr/\ep{Name=...}/"", or ""qr!\ep{na=/(SMILING|GRINNING) FACE/}!""" 4 +.el .IP "It is now possible to write \f(CWqr/\ep{Name=...}/\fR, or \f(CWqr!\ep{na=/(SMILING|GRINNING) FACE/}!\fR" 4 +.IX Item "It is now possible to write qr/p{Name=...}/, or qr!p{na=/(SMILING|GRINNING) FACE/}!" +.ie n .IP "Improvement of POSIX::mblen(), ""mbtowc"", and ""wctomb""" 4 +.el .IP "Improvement of \f(CWPOSIX::mblen()\fR, \f(CWmbtowc\fR, and \f(CWwctomb\fR" 4 +.IX Item "Improvement of POSIX::mblen(), mbtowc, and wctomb" +.IP "Alpha assertions are no longer experimental" 4 +.IX Item "Alpha assertions are no longer experimental" +.IP "Script runs are no longer experimental" 4 +.IX Item "Script runs are no longer experimental" +.IP "Feature checks are now faster" 4 +.IX Item "Feature checks are now faster" +.IP "Perl is now developed on GitHub" 4 +.IX Item "Perl is now developed on GitHub" +.IP "Compiled patterns can now be dumped before optimization" 4 +.IX Item "Compiled patterns can now be dumped before optimization" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2020\-10543] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-10543] Buffer overflow caused by a crafted regular expression" +.IP "[CVE\-2020\-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" 4 +.IX Item "[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" +.IP "[CVE\-2020\-12723] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-12723] Buffer overflow caused by a crafted regular expression" +.IP "Additional Note" 4 +.IX Item "Additional Note" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Certain pattern matching features are now prohibited in compiling Unicode property value wildcard subpatterns" 4 +.IX Item "Certain pattern matching features are now prohibited in compiling Unicode property value wildcard subpatterns" +.ie n .IP "Unused functions ""POSIX::mbstowcs"" and ""POSIX::wcstombs"" are removed" 4 +.el .IP "Unused functions \f(CWPOSIX::mbstowcs\fR and \f(CWPOSIX::wcstombs\fR are removed" 4 +.IX Item "Unused functions POSIX::mbstowcs and POSIX::wcstombs are removed" +.ie n .IP "A bug fix for ""(?[...])"" may have caused some patterns to no longer compile" 4 +.el .IP "A bug fix for \f(CW(?[...])\fR may have caused some patterns to no longer compile" 4 +.IX Item "A bug fix for (?[...]) may have caused some patterns to no longer compile" +.ie n .IP """\ep{\fIuser\-defined\fR}"" properties now always override official Unicode ones" 4 +.el .IP "\f(CW\ep{\fR\f(CIuser\-defined\fR\f(CW}\fR properties now always override official Unicode ones" 4 +.IX Item "p{user-defined} properties now always override official Unicode ones" +.IP "Modifiable variables are no longer permitted in constants" 4 +.IX Item "Modifiable variables are no longer permitted in constants" +.ie n .IP "Use of ""vec"" on strings with code points above 0xFF is forbidden" 4 +.el .IP "Use of \f(CWvec\fR on strings with code points above 0xFF is forbidden" 4 +.IX Item "Use of vec on strings with code points above 0xFF is forbidden" +.IP "Use of code points over 0xFF in string bitwise operators" 4 +.IX Item "Use of code points over 0xFF in string bitwise operators" +.ie n .IP "Sys::Hostname::hostname() does not accept arguments" 4 +.el .IP "\f(CWSys::Hostname::hostname()\fR does not accept arguments" 4 +.IX Item "Sys::Hostname::hostname() does not accept arguments" +.IP "Plain ""0"" string now treated as a number for range operator" 4 +.IX Item "Plain ""0"" string now treated as a number for range operator" +.ie n .IP """\eK"" now disallowed in look-ahead and look-behind assertions" 4 +.el .IP "\f(CW\eK\fR now disallowed in look-ahead and look-behind assertions" 4 +.IX Item "K now disallowed in look-ahead and look-behind assertions" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.PD +\&\f(CW\*(C`caller\*(C'\fR, \f(CW\*(C`_\|_FILE_\|_\*(C'\fR, \f(CW\*(C`_\|_LINE_\|_\*(C'\fR, \f(CW\*(C`return\*(C'\fR, \f(CW\*(C`open\*(C'\fR +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.PD 0 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP perlbug 4 +.IX Item "perlbug" +.PD +The bug tracker homepage URL now points to GitHub +.IP streamzip 4 +.IX Item "streamzip" +.RE +.RS 4 +.RE +.PD 0 +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.RS 4 +.IP \fIConfigure\fR 4 +.IX Item "Configure" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.PD +Windows CE +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +Linux, NetBSD 8.0, Windows, Solaris, VMS, z/OS +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5303delta \- what is new for perl v5.30.3" +.IX Subsection "perl5303delta - what is new for perl v5.30.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2020\-10543] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-10543] Buffer overflow caused by a crafted regular expression" +.IP "[CVE\-2020\-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" 4 +.IX Item "[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" +.IP "[CVE\-2020\-12723] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-12723] Buffer overflow caused by a crafted regular expression" +.IP "Additional Note" 4 +.IX Item "Additional Note" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5302delta \- what is new for perl v5.30.2" +.IX Subsection "perl5302delta - what is new for perl v5.30.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Windows +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5301delta \- what is new for perl v5.30.1" +.IX Subsection "perl5301delta - what is new for perl v5.30.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Win32 +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5300delta \- what is new for perl v5.30.0" +.IX Subsection "perl5300delta - what is new for perl v5.30.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Notice 4 +.IX Item "Notice" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Limited variable length lookbehind in regular expression pattern matching is now experimentally supported" 4 +.IX Item "Limited variable length lookbehind in regular expression pattern matching is now experimentally supported" +.ie n .IP "The upper limit ""n"" specifiable in a regular expression quantifier of the form ""{m,n}"" has been doubled to 65534" 4 +.el .IP "The upper limit \f(CW""n""\fR specifiable in a regular expression quantifier of the form \f(CW""{m,n}""\fR has been doubled to 65534" 4 +.IX Item "The upper limit ""n"" specifiable in a regular expression quantifier of the form ""{m,n}"" has been doubled to 65534" +.IP "Unicode 12.1 is supported" 4 +.IX Item "Unicode 12.1 is supported" +.IP "Wildcards in Unicode property value specifications are now partially supported" 4 +.IX Item "Wildcards in Unicode property value specifications are now partially supported" +.IP "qr'\eN{name}' is now supported" 4 +.IX Item "qr'N{name}' is now supported" +.IP "Turkic UTF\-8 locales are now seamlessly supported" 4 +.IX Item "Turkic UTF-8 locales are now seamlessly supported" +.IP "It is now possible to compile perl to always use thread-safe locale operations." 4 +.IX Item "It is now possible to compile perl to always use thread-safe locale operations." +.IP "Eliminate opASSIGN macro usage from core" 4 +.IX Item "Eliminate opASSIGN macro usage from core" +.ie n .IP """\-Drv"" now means something on ""\-DDEBUGGING"" builds" 4 +.el .IP "\f(CW\-Drv\fR now means something on \f(CW\-DDEBUGGING\fR builds" 4 +.IX Item "-Drv now means something on -DDEBUGGING builds" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.ie n .IP "Assigning non-zero to $[ is fatal" 4 +.el .IP "Assigning non-zero to \f(CW$[\fR is fatal" 4 +.IX Item "Assigning non-zero to $[ is fatal" +.IP "Delimiters must now be graphemes" 4 +.IX Item "Delimiters must now be graphemes" +.ie n .IP "Some formerly deprecated uses of an unescaped left brace ""{"" in regular expression patterns are now illegal" 4 +.el .IP "Some formerly deprecated uses of an unescaped left brace \f(CW""{""\fR in regular expression patterns are now illegal" 4 +.IX Item "Some formerly deprecated uses of an unescaped left brace ""{"" in regular expression patterns are now illegal" +.IP "Previously deprecated \fBsysread()\fR/\fBsyswrite()\fR on :utf8 handles is now fatal" 4 +.IX Item "Previously deprecated sysread()/syswrite() on :utf8 handles is now fatal" +.IP "\fBmy()\fR in false conditional prohibited" 4 +.IX Item "my() in false conditional prohibited" +.IP "Fatalize $* and $#" 4 +.IX Item "Fatalize $* and $#" +.IP "Fatalize unqualified use of \fBdump()\fR" 4 +.IX Item "Fatalize unqualified use of dump()" +.IP "Remove \fBFile::Glob::glob()\fR" 4 +.IX Item "Remove File::Glob::glob()" +.ie n .IP "pack() no longer can return malformed UTF\-8" 4 +.el .IP "\f(CWpack()\fR no longer can return malformed UTF\-8" 4 +.IX Item "pack() no longer can return malformed UTF-8" +.IP "Any set of digits in the Common script are legal in a script run of another script" 4 +.IX Item "Any set of digits in the Common script are legal in a script run of another script" +.IP "JSON::PP enables allow_nonref by default" 4 +.IX Item "JSON::PP enables allow_nonref by default" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.IP "In XS code, use of various macros dealing with UTF\-8." 4 +.IX Item "In XS code, use of various macros dealing with UTF-8." +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP xsubpp 4 +.IX Item "xsubpp" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +HP-UX 11.11, Mac OS X, Minix3, Cygwin, Win32 Mingw, Windows +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5283delta \- what is new for perl v5.28.3" +.IX Subsection "perl5283delta - what is new for perl v5.28.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2020\-10543] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-10543] Buffer overflow caused by a crafted regular expression" +.IP "[CVE\-2020\-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" 4 +.IX Item "[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression" +.IP "[CVE\-2020\-12723] Buffer overflow caused by a crafted regular expression" 4 +.IX Item "[CVE-2020-12723] Buffer overflow caused by a crafted regular expression" +.IP "Additional Note" 4 +.IX Item "Additional Note" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5282delta \- what is new for perl v5.28.2" +.IX Subsection "perl5282delta - what is new for perl v5.28.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Any set of digits in the Common script are legal in a script run of another script" 4 +.IX Item "Any set of digits in the Common script are legal in a script run of another script" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Windows, Mac OS X +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5281delta \- what is new for perl v5.28.1" +.IX Subsection "perl5281delta - what is new for perl v5.28.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2018\-18311] Integer overflow leading to buffer overflow and segmentation fault" 4 +.IX Item "[CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault" +.IP "[CVE\-2018\-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)" 4 +.IX Item "[CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5280delta \- what is new for perl v5.28.0" +.IX Subsection "perl5280delta - what is new for perl v5.28.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Unicode 10.0 is supported" 4 +.IX Item "Unicode 10.0 is supported" +.ie n .IP """delete"" on key/value hash slices" 4 +.el .IP "\f(CWdelete\fR on key/value hash slices" 4 +.IX Item "delete on key/value hash slices" +.IP "Experimentally, there are now alphabetic synonyms for some regular expression assertions" 4 +.IX Item "Experimentally, there are now alphabetic synonyms for some regular expression assertions" +.IP "Mixed Unicode scripts are now detectable" 4 +.IX Item "Mixed Unicode scripts are now detectable" +.ie n .IP "In-place editing with ""perl \-i"" is now safer" 4 +.el .IP "In-place editing with \f(CWperl \-i\fR is now safer" 4 +.IX Item "In-place editing with perl -i is now safer" +.IP "Initialisation of aggregate state variables" 4 +.IX Item "Initialisation of aggregate state variables" +.IP "Full-size inode numbers" 4 +.IX Item "Full-size inode numbers" +.ie n .IP "The ""sprintf"" %j format size modifier is now available with pre\-C99 compilers" 4 +.el .IP "The \f(CWsprintf\fR \f(CW%j\fR format size modifier is now available with pre\-C99 compilers" 4 +.IX Item "The sprintf %j format size modifier is now available with pre-C99 compilers" +.IP "Close-on-exec flag set atomically" 4 +.IX Item "Close-on-exec flag set atomically" +.IP "String\- and number-specific bitwise ops are no longer experimental" 4 +.IX Item "String- and number-specific bitwise ops are no longer experimental" +.IP "Locales are now thread-safe on systems that support them" 4 +.IX Item "Locales are now thread-safe on systems that support them" +.ie n .IP "New read-only predefined variable ""${^SAFE_LOCALES}""" 4 +.el .IP "New read-only predefined variable \f(CW${^SAFE_LOCALES}\fR" 4 +.IX Item "New read-only predefined variable ${^SAFE_LOCALES}" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2017\-12837] Heap buffer overflow in regular expression compiler" 4 +.IX Item "[CVE-2017-12837] Heap buffer overflow in regular expression compiler" +.IP "[CVE\-2017\-12883] Buffer over-read in regular expression parser" 4 +.IX Item "[CVE-2017-12883] Buffer over-read in regular expression parser" +.ie n .IP "[CVE\-2017\-12814] $ENV{$key} stack buffer overflow on Windows" 4 +.el .IP "[CVE\-2017\-12814] \f(CW$ENV{$key}\fR stack buffer overflow on Windows" 4 +.IX Item "[CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows" +.IP "Default Hash Function Change" 4 +.IX Item "Default Hash Function Change" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Subroutine attribute and signature order" 4 +.IX Item "Subroutine attribute and signature order" +.IP "Comma-less variable lists in formats are no longer allowed" 4 +.IX Item "Comma-less variable lists in formats are no longer allowed" +.ie n .IP "The "":locked"" and "":unique"" attributes have been removed" 4 +.el .IP "The \f(CW:locked\fR and \f(CW:unique\fR attributes have been removed" 4 +.IX Item "The :locked and :unique attributes have been removed" +.ie n .IP """\eN{}"" with nothing between the braces is now illegal" 4 +.el .IP "\f(CW\eN{}\fR with nothing between the braces is now illegal" 4 +.IX Item "N{} with nothing between the braces is now illegal" +.IP "Opening the same symbol as both a file and directory handle is no longer allowed" 4 +.IX Item "Opening the same symbol as both a file and directory handle is no longer allowed" +.ie n .IP "Use of bare ""<<"" to mean ""<<"""""" is no longer allowed" 4 +.el .IP "Use of bare \f(CW<<\fR to mean \f(CW<<""""\fR is no longer allowed" 4 +.IX Item "Use of bare << to mean <<"""" is no longer allowed" +.IP "Setting $/ to a reference to a non-positive integer no longer allowed" 4 +.IX Item "Setting $/ to a reference to a non-positive integer no longer allowed" +.ie n .IP "Unicode code points with values exceeding ""IV_MAX"" are now fatal" 4 +.el .IP "Unicode code points with values exceeding \f(CWIV_MAX\fR are now fatal" 4 +.IX Item "Unicode code points with values exceeding IV_MAX are now fatal" +.ie n .IP "The ""B::OP::terse"" method has been removed" 4 +.el .IP "The \f(CWB::OP::terse\fR method has been removed" 4 +.IX Item "The B::OP::terse method has been removed" +.IP "Use of inherited AUTOLOAD for non-methods is no longer allowed" 4 +.IX Item "Use of inherited AUTOLOAD for non-methods is no longer allowed" +.IP "Use of strings with code points over 0xFF is not allowed for bitwise string operators" 4 +.IX Item "Use of strings with code points over 0xFF is not allowed for bitwise string operators" +.ie n .IP "Setting ""${^ENCODING}"" to a defined value is now illegal" 4 +.el .IP "Setting \f(CW${^ENCODING}\fR to a defined value is now illegal" 4 +.IX Item "Setting ${^ENCODING} to a defined value is now illegal" +.ie n .IP "Backslash no longer escapes colon in PATH for the ""\-S"" switch" 4 +.el .IP "Backslash no longer escapes colon in PATH for the \f(CW\-S\fR switch" 4 +.IX Item "Backslash no longer escapes colon in PATH for the -S switch" +.IP "the \-DH (DEBUG_H) misfeature has been removed" 4 +.IX Item "the -DH (DEBUG_H) misfeature has been removed" +.IP "Yada-yada is now strictly a statement" 4 +.IX Item "Yada-yada is now strictly a statement" +.IP "Sort algorithm can no longer be specified" 4 +.IX Item "Sort algorithm can no longer be specified" +.IP "Over-radix digits in floating point literals" 4 +.IX Item "Over-radix digits in floating point literals" +.ie n .IP "Return type of unpackstring()" 4 +.el .IP "Return type of \f(CWunpackstring()\fR" 4 +.IX Item "Return type of unpackstring()" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP "Use of ""vec"" on strings with code points above 0xFF is deprecated" 4 +.el .IP "Use of \f(CWvec\fR on strings with code points above 0xFF is deprecated" 4 +.IX Item "Use of vec on strings with code points above 0xFF is deprecated" +.ie n .IP "Some uses of unescaped ""{"" in regexes are no longer fatal" 4 +.el .IP "Some uses of unescaped \f(CW""{""\fR in regexes are no longer fatal" 4 +.IX Item "Some uses of unescaped ""{"" in regexes are no longer fatal" +.ie n .IP "Use of unescaped ""{"" immediately after a ""("" in regular expression patterns is deprecated" 4 +.el .IP "Use of unescaped \f(CW""{""\fR immediately after a \f(CW""(""\fR in regular expression patterns is deprecated" 4 +.IX Item "Use of unescaped ""{"" immediately after a ""("" in regular expression patterns is deprecated" +.ie n .IP "Assignment to $[ will be fatal in Perl 5.30" 4 +.el .IP "Assignment to \f(CW$[\fR will be fatal in Perl 5.30" 4 +.IX Item "Assignment to $[ will be fatal in Perl 5.30" +.IP "\fBhostname()\fR won't accept arguments in Perl 5.32" 4 +.IX Item "hostname() won't accept arguments in Perl 5.32" +.IP "Module removals" 4 +.IX Item "Module removals" +.PD +B::Debug, Locale::Codes and its associated Country, Currency and +Language modules +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Removal of use vars" 4 +.IX Item "Removal of use vars" +.IP "Use of DynaLoader changed to XSLoader in many modules" 4 +.IX Item "Use of DynaLoader changed to XSLoader in many modules" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.PD +"Variable length lookbehind not implemented in regex +m/%s/" in perldiag, "Use of state \f(CW$_\fR is experimental" in perldiag +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.PD 0 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP perlbug 4 +.IX Item "perlbug" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.PD +C89 requirement, New probes, HAS_BUILTIN_ADD_OVERFLOW, +HAS_BUILTIN_MUL_OVERFLOW, HAS_BUILTIN_SUB_OVERFLOW, +HAS_THREAD_SAFE_NL_LANGINFO_L, HAS_LOCALECONV_L, HAS_MBRLEN, HAS_MBRTOWC, +HAS_MEMRCHR, HAS_NANOSLEEP, HAS_STRNLEN, HAS_STRTOLD_L, I_WCHAR +.IP Testing 4 +.IX Item "Testing" +.PD 0 +.IP Packaging 4 +.IX Item "Packaging" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.PD +PowerUX / Power MAX OS +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +CentOS, Cygwin, Darwin, FreeBSD, VMS, Windows +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5263delta \- what is new for perl v5.26.3" +.IX Subsection "perl5263delta - what is new for perl v5.26.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2018\-12015] Directory traversal in module Archive::Tar" 4 +.IX Item "[CVE-2018-12015] Directory traversal in module Archive::Tar" +.IP "[CVE\-2018\-18311] Integer overflow leading to buffer overflow and segmentation fault" 4 +.IX Item "[CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault" +.IP "[CVE\-2018\-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)" 4 +.IX Item "[CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)" +.IP "[CVE\-2018\-18313] Heap-buffer-overflow read in S_grok_bslash_N (regcomp.c)" 4 +.IX Item "[CVE-2018-18313] Heap-buffer-overflow read in S_grok_bslash_N (regcomp.c)" +.IP "[CVE\-2018\-18314] Heap-buffer-overflow write in S_regatom (regcomp.c)" 4 +.IX Item "[CVE-2018-18314] Heap-buffer-overflow write in S_regatom (regcomp.c)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5262delta \- what is new for perl v5.26.2" +.IX Subsection "perl5262delta - what is new for perl v5.26.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2018\-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)" 4 +.IX Item "[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)" +.IP "[CVE\-2018\-6798] Heap-buffer-overflow in Perl_\|_byte_dump_string (utf8.c)" 4 +.IX Item "[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)" +.IP "[CVE\-2018\-6913] heap-buffer-overflow in S_pack_rec" 4 +.IX Item "[CVE-2018-6913] heap-buffer-overflow in S_pack_rec" +.IP "Assertion failure in Perl_\|_core_swash_init (utf8.c)" 4 +.IX Item "Assertion failure in Perl__core_swash_init (utf8.c)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Windows +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5261delta \- what is new for perl v5.26.1" +.IX Subsection "perl5261delta - what is new for perl v5.26.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2017\-12837] Heap buffer overflow in regular expression compiler" 4 +.IX Item "[CVE-2017-12837] Heap buffer overflow in regular expression compiler" +.IP "[CVE\-2017\-12883] Buffer over-read in regular expression parser" 4 +.IX Item "[CVE-2017-12883] Buffer over-read in regular expression parser" +.ie n .IP "[CVE\-2017\-12814] $ENV{$key} stack buffer overflow on Windows" 4 +.el .IP "[CVE\-2017\-12814] \f(CW$ENV{$key}\fR stack buffer overflow on Windows" 4 +.IX Item "[CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +FreeBSD, Windows +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5260delta \- what is new for perl v5.26.0" +.IX Subsection "perl5260delta - what is new for perl v5.26.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Notice 4 +.IX Item "Notice" +.PD +\&\f(CW"."\fR no longer in \f(CW@INC\fR, \f(CW\*(C`do\*(C'\fR may now warn, In regular expression +patterns, a literal left brace \f(CW"{"\fR should be escaped +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.PD 0 +.IP "Lexical subroutines are no longer experimental" 4 +.IX Item "Lexical subroutines are no longer experimental" +.IP "Indented Here-documents" 4 +.IX Item "Indented Here-documents" +.ie n .IP "New regular expression modifier ""/xx""" 4 +.el .IP "New regular expression modifier \f(CW/xx\fR" 4 +.IX Item "New regular expression modifier /xx" +.ie n .IP """@{^CAPTURE}"", ""%{^CAPTURE}"", and ""%{^CAPTURE_ALL}""" 4 +.el .IP "\f(CW@{^CAPTURE}\fR, \f(CW%{^CAPTURE}\fR, and \f(CW%{^CAPTURE_ALL}\fR" 4 +.IX Item "@{^CAPTURE}, %{^CAPTURE}, and %{^CAPTURE_ALL}" +.IP "Declaring a reference to a variable" 4 +.IX Item "Declaring a reference to a variable" +.IP "Unicode 9.0 is now supported" 4 +.IX Item "Unicode 9.0 is now supported" +.ie n .IP "Use of ""\ep{\fIscript\fR}"" uses the improved Script_Extensions property" 4 +.el .IP "Use of \f(CW\ep{\fR\f(CIscript\fR\f(CW}\fR uses the improved Script_Extensions property" 4 +.IX Item "Use of p{script} uses the improved Script_Extensions property" +.IP "Perl can now do default collation in UTF\-8 locales on platforms that support it" 4 +.IX Item "Perl can now do default collation in UTF-8 locales on platforms that support it" +.ie n .IP "Better locale collation of strings containing embedded ""NUL"" characters" 4 +.el .IP "Better locale collation of strings containing embedded \f(CWNUL\fR characters" 4 +.IX Item "Better locale collation of strings containing embedded NUL characters" +.ie n .IP """CORE"" subroutines for hash and array functions callable via reference" 4 +.el .IP "\f(CWCORE\fR subroutines for hash and array functions callable via reference" 4 +.IX Item "CORE subroutines for hash and array functions callable via reference" +.IP "New Hash Function For 64\-bit Builds" 4 +.IX Item "New Hash Function For 64-bit Builds" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Removal of the current directory (""."") from @INC" 4 +.el .IP "Removal of the current directory (\f(CW"".""\fR) from \f(CW@INC\fR" 4 +.IX Item "Removal of the current directory (""."") from @INC" +.PD +\&\fIConfigure \-Udefault_inc_excludes_dot\fR, \f(CW\*(C`PERL_USE_UNSAFE_INC\*(C'\fR, A new +deprecation warning issued by \f(CW\*(C`do\*(C'\fR, Script authors, Installing and using +CPAN modules, Module Authors +.IP "Escaped colons and relative paths in PATH" 4 +.IX Item "Escaped colons and relative paths in PATH" +.PD 0 +.ie n .IP "New ""\-Di"" switch is now required for PerlIO debugging output" 4 +.el .IP "New \f(CW\-Di\fR switch is now required for PerlIO debugging output" 4 +.IX Item "New -Di switch is now required for PerlIO debugging output" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.ie n .IP "Unescaped literal ""{"" characters in regular expression patterns are no longer permissible" 4 +.el .IP "Unescaped literal \f(CW""{""\fR characters in regular expression patterns are no longer permissible" 4 +.IX Item "Unescaped literal ""{"" characters in regular expression patterns are no longer permissible" +.ie n .IP "scalar(%hash) return signature changed" 4 +.el .IP "\f(CWscalar(%hash)\fR return signature changed" 4 +.IX Item "scalar(%hash) return signature changed" +.ie n .IP """keys"" returned from an lvalue subroutine" 4 +.el .IP "\f(CWkeys\fR returned from an lvalue subroutine" 4 +.IX Item "keys returned from an lvalue subroutine" +.ie n .IP "The ""${^ENCODING}"" facility has been removed" 4 +.el .IP "The \f(CW${^ENCODING}\fR facility has been removed" 4 +.IX Item "The ${^ENCODING} facility has been removed" +.ie n .IP "POSIX::tmpnam() has been removed" 4 +.el .IP "\f(CWPOSIX::tmpnam()\fR has been removed" 4 +.IX Item "POSIX::tmpnam() has been removed" +.IP "require ::Foo::Bar is now illegal." 4 +.IX Item "require ::Foo::Bar is now illegal." +.IP "Literal control character variable names are no longer permissible" 4 +.IX Item "Literal control character variable names are no longer permissible" +.ie n .IP """NBSP"" is no longer permissible in ""\eN{...}""" 4 +.el .IP "\f(CWNBSP\fR is no longer permissible in \f(CW\eN{...}\fR" 4 +.IX Item "NBSP is no longer permissible in N{...}" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.IP "String delimiters that aren't stand-alone graphemes are now deprecated" 4 +.IX Item "String delimiters that aren't stand-alone graphemes are now deprecated" +.ie n .IP """\ec\fIX\fR"" that maps to a printable is no longer deprecated" 4 +.el .IP "\f(CW\ec\fR\f(CIX\fR\f(CW\fR that maps to a printable is no longer deprecated" 4 +.IX Item "cX that maps to a printable is no longer deprecated" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.PD +New Faster Hash Function on 64 bit builds, readline is faster +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.PD 0 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "\fIc2ph\fR and \fIpstruct\fR" 4 +.IX Item "c2ph and pstruct" +.IP \fIPorting/pod_lib.pl\fR 4 +.IX Item "Porting/pod_lib.pl" +.IP \fIPorting/sync\-with\-cpan\fR 4 +.IX Item "Porting/sync-with-cpan" +.IP \fIperf/benchmarks\fR 4 +.IX Item "perf/benchmarks" +.IP \fIPorting/checkAUTHORS.pl\fR 4 +.IX Item "Porting/checkAUTHORS.pl" +.IP \fIt/porting/regen.t\fR 4 +.IX Item "t/porting/regen.t" +.IP \fIutils/h2xs.PL\fR 4 +.IX Item "utils/h2xs.PL" +.IP perlbug 4 +.IX Item "perlbug" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.PD +NetBSD/VAX +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +Darwin, EBCDIC, HP-UX, Hurd, VAX, VMS, Windows, Linux, OpenBSD 6, FreeBSD, +DragonFly BSD +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Errata From Previous Releases" 4 +.IX Item "Errata From Previous Releases" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "Give Thanks" 4 +.IX Item "Give Thanks" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5244delta \- what is new for perl v5.24.4" +.IX Subsection "perl5244delta - what is new for perl v5.24.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2018\-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)" 4 +.IX Item "[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)" +.IP "[CVE\-2018\-6798] Heap-buffer-overflow in Perl_\|_byte_dump_string (utf8.c)" 4 +.IX Item "[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)" +.IP "[CVE\-2018\-6913] heap-buffer-overflow in S_pack_rec" 4 +.IX Item "[CVE-2018-6913] heap-buffer-overflow in S_pack_rec" +.IP "Assertion failure in Perl_\|_core_swash_init (utf8.c)" 4 +.IX Item "Assertion failure in Perl__core_swash_init (utf8.c)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5243delta \- what is new for perl v5.24.3" +.IX Subsection "perl5243delta - what is new for perl v5.24.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "[CVE\-2017\-12837] Heap buffer overflow in regular expression compiler" 4 +.IX Item "[CVE-2017-12837] Heap buffer overflow in regular expression compiler" +.IP "[CVE\-2017\-12883] Buffer over-read in regular expression parser" 4 +.IX Item "[CVE-2017-12883] Buffer over-read in regular expression parser" +.ie n .IP "[CVE\-2017\-12814] $ENV{$key} stack buffer overflow on Windows" 4 +.el .IP "[CVE\-2017\-12814] \f(CW$ENV{$key}\fR stack buffer overflow on Windows" 4 +.IX Item "[CVE-2017-12814] $ENV{$key} stack buffer overflow on Windows" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +VMS, Windows +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5242delta \- what is new for perl v5.24.2" +.IX Subsection "perl5242delta - what is new for perl v5.24.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Improved handling of '.' in @INC in base.pm" 4 +.el .IP "Improved handling of '.' in \f(CW@INC\fR in base.pm" 4 +.IX Item "Improved handling of '.' in @INC in base.pm" +.IP """Escaped"" colons and relative paths in PATH" 4 +.IX Item """Escaped"" colons and relative paths in PATH" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5241delta \- what is new for perl v5.24.1" +.IX Subsection "perl5241delta - what is new for perl v5.24.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "\fB\-Di\fR switch is now required for PerlIO debugging output" 4 +.IX Item "-Di switch is now required for PerlIO debugging output" +.IP "Core modules and tools no longer search \fI"".""\fR for optional modules" 4 +.IX Item "Core modules and tools no longer search ""."" for optional modules" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5240delta \- what is new for perl v5.24.0" +.IX Subsection "perl5240delta - what is new for perl v5.24.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Postfix dereferencing is no longer experimental" 4 +.IX Item "Postfix dereferencing is no longer experimental" +.IP "Unicode 8.0 is now supported" 4 +.IX Item "Unicode 8.0 is now supported" +.IP "perl will now croak when closing an in-place output file fails" 4 +.IX Item "perl will now croak when closing an in-place output file fails" +.ie n .IP "New ""\eb{lb}"" boundary in regular expressions" 4 +.el .IP "New \f(CW\eb{lb}\fR boundary in regular expressions" 4 +.IX Item "New b{lb} boundary in regular expressions" +.ie n .IP """qr/(?[ ])/"" now works in UTF\-8 locales" 4 +.el .IP "\f(CWqr/(?[ ])/\fR now works in UTF\-8 locales" 4 +.IX Item "qr/(?[ ])/ now works in UTF-8 locales" +.ie n .IP "Integer shift (""<<"" and "">>"") now more explicitly defined" 4 +.el .IP "Integer shift (\f(CW<<\fR and \f(CW>>\fR) now more explicitly defined" 4 +.IX Item "Integer shift (<< and >>) now more explicitly defined" +.IP "printf and sprintf now allow reordered precision arguments" 4 +.IX Item "printf and sprintf now allow reordered precision arguments" +.ie n .IP "More fields provided to ""sigaction"" callback with ""SA_SIGINFO""" 4 +.el .IP "More fields provided to \f(CWsigaction\fR callback with \f(CWSA_SIGINFO\fR" 4 +.IX Item "More fields provided to sigaction callback with SA_SIGINFO" +.IP "Hashbang redirection to Perl 6" 4 +.IX Item "Hashbang redirection to Perl 6" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Set proper umask before calling mkstemp(3)" 4 +.el .IP "Set proper umask before calling \f(CWmkstemp(3)\fR" 4 +.IX Item "Set proper umask before calling mkstemp(3)" +.IP "Fix out of boundary access in Win32 path handling" 4 +.IX Item "Fix out of boundary access in Win32 path handling" +.IP "Fix loss of taint in canonpath" 4 +.IX Item "Fix loss of taint in canonpath" +.ie n .IP "Avoid accessing uninitialized memory in win32 crypt()" 4 +.el .IP "Avoid accessing uninitialized memory in win32 \f(CWcrypt()\fR" 4 +.IX Item "Avoid accessing uninitialized memory in win32 crypt()" +.ie n .IP "Remove duplicate environment variables from ""environ""" 4 +.el .IP "Remove duplicate environment variables from \f(CWenviron\fR" 4 +.IX Item "Remove duplicate environment variables from environ" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.ie n .IP "The ""autoderef"" feature has been removed" 4 +.el .IP "The \f(CWautoderef\fR feature has been removed" 4 +.IX Item "The autoderef feature has been removed" +.ie n .IP "Lexical $_ has been removed" 4 +.el .IP "Lexical \f(CW$_\fR has been removed" 4 +.IX Item "Lexical $_ has been removed" +.ie n .IP """qr/\eb{wb}/"" is now tailored to Perl expectations" 4 +.el .IP "\f(CWqr/\eb{wb}/\fR is now tailored to Perl expectations" 4 +.IX Item "qr/b{wb}/ is now tailored to Perl expectations" +.IP "Regular expression compilation errors" 4 +.IX Item "Regular expression compilation errors" +.ie n .IP """qr/\eN{}/"" now disallowed under ""use re ""strict""""" 4 +.el .IP "\f(CWqr/\eN{}/\fR now disallowed under \f(CWuse re ""strict""\fR" 4 +.IX Item "qr/N{}/ now disallowed under use re ""strict""" +.IP "Nested declarations are now disallowed" 4 +.IX Item "Nested declarations are now disallowed" +.ie n .IP "The ""/\eC/"" character class has been removed." 4 +.el .IP "The \f(CW/\eC/\fR character class has been removed." 4 +.IX Item "The /C/ character class has been removed." +.ie n .IP "chdir(\*(Aq\*(Aq) no longer chdirs home" 4 +.el .IP "\f(CWchdir(\*(Aq\*(Aq)\fR no longer chdirs home" 4 +.IX Item "chdir() no longer chdirs home" +.IP "ASCII characters in variable names must now be all visible" 4 +.IX Item "ASCII characters in variable names must now be all visible" +.ie n .IP "An off by one issue in $Carp::MaxArgNums has been fixed" 4 +.el .IP "An off by one issue in \f(CW$Carp::MaxArgNums\fR has been fixed" 4 +.IX Item "An off by one issue in $Carp::MaxArgNums has been fixed" +.ie n .IP "Only blanks and tabs are now allowed within ""[...]"" within ""(?[...])""." 4 +.el .IP "Only blanks and tabs are now allowed within \f(CW[...]\fR within \f(CW(?[...])\fR." 4 +.IX Item "Only blanks and tabs are now allowed within [...] within (?[...])." +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP "Using code points above the platform's ""IV_MAX"" is now deprecated" 4 +.el .IP "Using code points above the platform's \f(CWIV_MAX\fR is now deprecated" 4 +.IX Item "Using code points above the platform's IV_MAX is now deprecated" +.IP "Doing bitwise operations on strings containing code points above 0xFF is deprecated" 4 +.IX Item "Doing bitwise operations on strings containing code points above 0xFF is deprecated" +.ie n .IP "sysread(), syswrite(), recv() and send() are deprecated on :utf8 handles" 4 +.el .IP "\f(CWsysread()\fR, \f(CWsyswrite()\fR, \f(CWrecv()\fR and \f(CWsend()\fR are deprecated on :utf8 handles" 4 +.IX Item "sysread(), syswrite(), recv() and send() are deprecated on :utf8 handles" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +AmigaOS, Cygwin, EBCDIC, UTF-EBCDIC extended, EBCDIC \f(CWcmp()\fR and \f(CWsort()\fR +fixed for UTF-EBCDIC strings, EBCDIC \f(CW\*(C`tr///\*(C'\fR and \f(CW\*(C`y///\*(C'\fR fixed for +\&\f(CW\*(C`\eN{}\*(C'\fR, and \f(CW\*(C`use\ utf8\*(C'\fR ranges, FreeBSD, IRIX, MacOS X, Solaris, Tru64, +VMS, Win32, ppc64el, floating point +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5224delta \- what is new for perl v5.22.4" +.IX Subsection "perl5224delta - what is new for perl v5.22.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Improved handling of '.' in @INC in base.pm" 4 +.el .IP "Improved handling of '.' in \f(CW@INC\fR in base.pm" 4 +.IX Item "Improved handling of '.' in @INC in base.pm" +.IP """Escaped"" colons and relative paths in PATH" 4 +.IX Item """Escaped"" colons and relative paths in PATH" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5223delta \- what is new for perl v5.22.3" +.IX Subsection "perl5223delta - what is new for perl v5.22.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "\fB\-Di\fR switch is now required for PerlIO debugging output" 4 +.IX Item "-Di switch is now required for PerlIO debugging output" +.IP "Core modules and tools no longer search \fI"".""\fR for optional modules" 4 +.IX Item "Core modules and tools no longer search ""."" for optional modules" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5222delta \- what is new for perl v5.22.2" +.IX Subsection "perl5222delta - what is new for perl v5.22.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "Fix out of boundary access in Win32 path handling" 4 +.IX Item "Fix out of boundary access in Win32 path handling" +.ie n .IP "Fix loss of taint in canonpath()" 4 +.el .IP "Fix loss of taint in \f(CWcanonpath()\fR" 4 +.IX Item "Fix loss of taint in canonpath()" +.ie n .IP "Set proper umask before calling mkstemp(3)" 4 +.el .IP "Set proper umask before calling \f(CWmkstemp(3)\fR" 4 +.IX Item "Set proper umask before calling mkstemp(3)" +.ie n .IP "Avoid accessing uninitialized memory in Win32 crypt()" 4 +.el .IP "Avoid accessing uninitialized memory in Win32 \f(CWcrypt()\fR" 4 +.IX Item "Avoid accessing uninitialized memory in Win32 crypt()" +.ie n .IP "Remove duplicate environment variables from ""environ""" 4 +.el .IP "Remove duplicate environment variables from \f(CWenviron\fR" 4 +.IX Item "Remove duplicate environment variables from environ" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Darwin, OS X/Darwin, ppc64el, Tru64 +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5221delta \- what is new for perl v5.22.1" +.IX Subsection "perl5221delta - what is new for perl v5.22.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Bounds Checking Constructs" 4 +.IX Item "Bounds Checking Constructs" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +IRIX +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5220delta \- what is new for perl v5.22.0" +.IX Subsection "perl5220delta - what is new for perl v5.22.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "New bitwise operators" 4 +.IX Item "New bitwise operators" +.IP "New double-diamond operator" 4 +.IX Item "New double-diamond operator" +.ie n .IP "New ""\eb"" boundaries in regular expressions" 4 +.el .IP "New \f(CW\eb\fR boundaries in regular expressions" 4 +.IX Item "New b boundaries in regular expressions" +.IP "Non-Capturing Regular Expression Flag" 4 +.IX Item "Non-Capturing Regular Expression Flag" +.ie n .IP """use re \*(Aqstrict\*(Aq""" 4 +.el .IP "\f(CWuse re \*(Aqstrict\*(Aq\fR" 4 +.IX Item "use re strict" +.IP "Unicode 7.0 (with correction) is now supported" 4 +.IX Item "Unicode 7.0 (with correction) is now supported" +.ie n .IP """use\ locale"" can restrict which locale categories are affected" 4 +.el .IP "\f(CWuse\ locale\fR can restrict which locale categories are affected" 4 +.IX Item "use locale can restrict which locale categories are affected" +.IP "Perl now supports POSIX 2008 locale currency additions" 4 +.IX Item "Perl now supports POSIX 2008 locale currency additions" +.IP "Better heuristics on older platforms for determining locale UTF\-8ness" 4 +.IX Item "Better heuristics on older platforms for determining locale UTF-8ness" +.IP "Aliasing via reference" 4 +.IX Item "Aliasing via reference" +.ie n .IP """prototype"" with no arguments" 4 +.el .IP "\f(CWprototype\fR with no arguments" 4 +.IX Item "prototype with no arguments" +.ie n .IP "New "":const"" subroutine attribute" 4 +.el .IP "New \f(CW:const\fR subroutine attribute" 4 +.IX Item "New :const subroutine attribute" +.ie n .IP """fileno"" now works on directory handles" 4 +.el .IP "\f(CWfileno\fR now works on directory handles" 4 +.IX Item "fileno now works on directory handles" +.IP "List form of pipe open implemented for Win32" 4 +.IX Item "List form of pipe open implemented for Win32" +.IP "Assignment to list repetition" 4 +.IX Item "Assignment to list repetition" +.IP "Infinity and NaN (not-a-number) handling improved" 4 +.IX Item "Infinity and NaN (not-a-number) handling improved" +.IP "Floating point parsing has been improved" 4 +.IX Item "Floating point parsing has been improved" +.IP "Packing infinity or not-a-number into a character is now fatal" 4 +.IX Item "Packing infinity or not-a-number into a character is now fatal" +.IP "Experimental C Backtrace API" 4 +.IX Item "Experimental C Backtrace API" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Perl is now compiled with ""\-fstack\-protector\-strong"" if available" 4 +.el .IP "Perl is now compiled with \f(CW\-fstack\-protector\-strong\fR if available" 4 +.IX Item "Perl is now compiled with -fstack-protector-strong if available" +.IP "The Safe module could allow outside packages to be replaced" 4 +.IX Item "The Safe module could allow outside packages to be replaced" +.ie n .IP "Perl is now always compiled with ""\-D_FORTIFY_SOURCE=2"" if available" 4 +.el .IP "Perl is now always compiled with \f(CW\-D_FORTIFY_SOURCE=2\fR if available" 4 +.IX Item "Perl is now always compiled with -D_FORTIFY_SOURCE=2 if available" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Subroutine signatures moved before attributes" 4 +.IX Item "Subroutine signatures moved before attributes" +.ie n .IP """&"" and ""\e&"" prototypes accepts only subs" 4 +.el .IP "\f(CW&\fR and \f(CW\e&\fR prototypes accepts only subs" 4 +.IX Item "& and & prototypes accepts only subs" +.ie n .IP """use encoding"" is now lexical" 4 +.el .IP "\f(CWuse encoding\fR is now lexical" 4 +.IX Item "use encoding is now lexical" +.IP "List slices returning empty lists" 4 +.IX Item "List slices returning empty lists" +.ie n .IP """\eN{}"" with a sequence of multiple spaces is now a fatal error" 4 +.el .IP "\f(CW\eN{}\fR with a sequence of multiple spaces is now a fatal error" 4 +.IX Item "N{} with a sequence of multiple spaces is now a fatal error" +.ie n .IP """use\ UNIVERSAL\ \*(Aq...\*(Aq"" is now a fatal error" 4 +.el .IP "\f(CWuse\ UNIVERSAL\ \*(Aq...\*(Aq\fR is now a fatal error" 4 +.IX Item "use UNIVERSAL ... is now a fatal error" +.ie n .IP "In double-quotish ""\ec\fIX\fR"", \fIX\fR must now be a printable ASCII character" 4 +.el .IP "In double-quotish \f(CW\ec\fR\f(CIX\fR\f(CW\fR, \fIX\fR must now be a printable ASCII character" 4 +.IX Item "In double-quotish cX, X must now be a printable ASCII character" +.ie n .IP "Splitting the tokens ""(?"" and ""(*"" in regular expressions is now a fatal compilation error." 4 +.el .IP "Splitting the tokens \f(CW(?\fR and \f(CW(*\fR in regular expressions is now a fatal compilation error." 4 +.IX Item "Splitting the tokens (? and (* in regular expressions is now a fatal compilation error." +.ie n .IP """qr/foo/x"" now ignores all Unicode pattern white space" 4 +.el .IP "\f(CWqr/foo/x\fR now ignores all Unicode pattern white space" 4 +.IX Item "qr/foo/x now ignores all Unicode pattern white space" +.ie n .IP "Comment lines within ""(?[\ ])"" are now ended only by a ""\en""" 4 +.el .IP "Comment lines within \f(CW(?[\ ])\fR are now ended only by a \f(CW\en\fR" 4 +.IX Item "Comment lines within (?[ ]) are now ended only by a n" +.ie n .IP """(?[...])"" operators now follow standard Perl precedence" 4 +.el .IP "\f(CW(?[...])\fR operators now follow standard Perl precedence" 4 +.IX Item "(?[...]) operators now follow standard Perl precedence" +.ie n .IP "Omitting ""%"" and ""@"" on hash and array names is no longer permitted" 4 +.el .IP "Omitting \f(CW%\fR and \f(CW@\fR on hash and array names is no longer permitted" 4 +.IX Item "Omitting % and @ on hash and array names is no longer permitted" +.ie n .IP """$!"" text is now in English outside the scope of ""use locale""" 4 +.el .IP "\f(CW""$!""\fR text is now in English outside the scope of \f(CWuse locale\fR" 4 +.IX Item """$!"" text is now in English outside the scope of use locale" +.ie n .IP """$!"" text will be returned in UTF\-8 when appropriate" 4 +.el .IP "\f(CW""$!""\fR text will be returned in UTF\-8 when appropriate" 4 +.IX Item """$!"" text will be returned in UTF-8 when appropriate" +.ie n .IP "Support for ""?PATTERN?"" without explicit operator has been removed" 4 +.el .IP "Support for \f(CW?PATTERN?\fR without explicit operator has been removed" 4 +.IX Item "Support for ?PATTERN? without explicit operator has been removed" +.ie n .IP "defined(@array) and defined(%hash) are now fatal errors" 4 +.el .IP "\f(CWdefined(@array)\fR and \f(CWdefined(%hash)\fR are now fatal errors" 4 +.IX Item "defined(@array) and defined(%hash) are now fatal errors" +.IP "Using a hash or an array as a reference are now fatal errors" 4 +.IX Item "Using a hash or an array as a reference are now fatal errors" +.ie n .IP "Changes to the ""*"" prototype" 4 +.el .IP "Changes to the \f(CW*\fR prototype" 4 +.IX Item "Changes to the * prototype" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP "Setting ""${^ENCODING}"" to anything but ""undef""" 4 +.el .IP "Setting \f(CW${^ENCODING}\fR to anything but \f(CWundef\fR" 4 +.IX Item "Setting ${^ENCODING} to anything but undef" +.IP "Use of non-graphic characters in single-character variable names" 4 +.IX Item "Use of non-graphic characters in single-character variable names" +.ie n .IP "Inlining of ""sub () { $var }"" with observable side-effects" 4 +.el .IP "Inlining of \f(CWsub () { $var }\fR with observable side-effects" 4 +.IX Item "Inlining of sub () { $var } with observable side-effects" +.ie n .IP "Use of multiple ""/x"" regexp modifiers" 4 +.el .IP "Use of multiple \f(CW/x\fR regexp modifiers" 4 +.IX Item "Use of multiple /x regexp modifiers" +.ie n .IP "Using a NO-BREAK space in a character alias for ""\eN{...}"" is now deprecated" 4 +.el .IP "Using a NO-BREAK space in a character alias for \f(CW\eN{...}\fR is now deprecated" 4 +.IX Item "Using a NO-BREAK space in a character alias for N{...} is now deprecated" +.ie n .IP "A literal ""{"" should now be escaped in a pattern" 4 +.el .IP "A literal \f(CW""{""\fR should now be escaped in a pattern" 4 +.IX Item "A literal ""{"" should now be escaped in a pattern" +.IP "Making all warnings fatal is discouraged" 4 +.IX Item "Making all warnings fatal is discouraged" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.IP "Diagnostic Removals" 4 +.IX Item "Diagnostic Removals" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "\fIfind2perl\fR, \fIs2p\fR and \fIa2p\fR removal" 4 +.IX Item "find2perl, s2p and a2p removal" +.IP h2ph 4 +.IX Item "h2ph" +.IP encguess 4 +.IX Item "encguess" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Regained Platforms" 4 +.IX Item "Regained Platforms" +.PD +IRIX and Tru64 platforms are working again, z/OS running EBCDIC Code Page +1047 +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +NeXTSTEP/OPENSTEP +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +EBCDIC, HP-UX, Android, VMS, Win32, OpenBSD, Solaris +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5203delta \- what is new for perl v5.20.3" +.IX Subsection "perl5203delta - what is new for perl v5.20.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP h2ph 4 +.IX Item "h2ph" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Win32 +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5202delta \- what is new for perl v5.20.2" +.IX Subsection "perl5202delta - what is new for perl v5.20.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Regained Platforms" 4 +.IX Item "Regained Platforms" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Errata From Previous Releases" 4 +.IX Item "Errata From Previous Releases" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5201delta \- what is new for perl v5.20.1" +.IX Subsection "perl5201delta - what is new for perl v5.20.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Android, OpenBSD, Solaris, VMS, Windows +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5200delta \- what is new for perl v5.20.0" +.IX Subsection "perl5200delta - what is new for perl v5.20.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Experimental Subroutine signatures" 4 +.IX Item "Experimental Subroutine signatures" +.ie n .IP """sub""s now take a ""prototype"" attribute" 4 +.el .IP "\f(CWsub\fRs now take a \f(CWprototype\fR attribute" 4 +.IX Item "subs now take a prototype attribute" +.IP "More consistent prototype parsing" 4 +.IX Item "More consistent prototype parsing" +.ie n .IP """rand"" now uses a consistent random number generator" 4 +.el .IP "\f(CWrand\fR now uses a consistent random number generator" 4 +.IX Item "rand now uses a consistent random number generator" +.IP "New slice syntax" 4 +.IX Item "New slice syntax" +.IP "Experimental Postfix Dereferencing" 4 +.IX Item "Experimental Postfix Dereferencing" +.IP "Unicode 6.3 now supported" 4 +.IX Item "Unicode 6.3 now supported" +.ie n .IP "New ""\ep{Unicode}"" regular expression pattern property" 4 +.el .IP "New \f(CW\ep{Unicode}\fR regular expression pattern property" 4 +.IX Item "New p{Unicode} regular expression pattern property" +.IP "Better 64\-bit support" 4 +.IX Item "Better 64-bit support" +.ie n .IP """use\ locale"" now works on UTF\-8 locales" 4 +.el .IP "\f(CWuse\ locale\fR now works on UTF\-8 locales" 4 +.IX Item "use locale now works on UTF-8 locales" +.ie n .IP """use\ locale"" now compiles on systems without locale ability" 4 +.el .IP "\f(CWuse\ locale\fR now compiles on systems without locale ability" 4 +.IX Item "use locale now compiles on systems without locale ability" +.IP "More locale initialization fallback options" 4 +.IX Item "More locale initialization fallback options" +.ie n .IP """\-DL"" runtime option now added for tracing locale setting" 4 +.el .IP "\f(CW\-DL\fR runtime option now added for tracing locale setting" 4 +.IX Item "-DL runtime option now added for tracing locale setting" +.IP "\fB\-F\fR now implies \fB\-a\fR and \fB\-a\fR implies \fB\-n\fR" 4 +.IX Item "-F now implies -a and -a implies -n" +.ie n .IP "$a and $b warnings exemption" 4 +.el .IP "\f(CW$a\fR and \f(CW$b\fR warnings exemption" 4 +.IX Item "$a and $b warnings exemption" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "Avoid possible read of \fBfree()\fRd memory during parsing" 4 +.IX Item "Avoid possible read of free()d memory during parsing" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.ie n .IP """do"" can no longer be used to call subroutines" 4 +.el .IP "\f(CWdo\fR can no longer be used to call subroutines" 4 +.IX Item "do can no longer be used to call subroutines" +.IP "Quote-like escape changes" 4 +.IX Item "Quote-like escape changes" +.IP "Tainting happens under more circumstances; now conforms to documentation" 4 +.IX Item "Tainting happens under more circumstances; now conforms to documentation" +.ie n .IP """\ep{}"", ""\eP{}"" matching has changed for non-Unicode code points." 4 +.el .IP "\f(CW\ep{}\fR, \f(CW\eP{}\fR matching has changed for non-Unicode code points." 4 +.IX Item "p{}, P{} matching has changed for non-Unicode code points." +.ie n .IP """\ep{All}"" has been expanded to match all possible code points" 4 +.el .IP "\f(CW\ep{All}\fR has been expanded to match all possible code points" 4 +.IX Item "p{All} has been expanded to match all possible code points" +.IP "Data::Dumper's output may change" 4 +.IX Item "Data::Dumper's output may change" +.ie n .IP "Locale decimal point character no longer leaks outside of ""use\ locale"" scope" 4 +.el .IP "Locale decimal point character no longer leaks outside of \f(CWuse\ locale\fR scope" 4 +.IX Item "Locale decimal point character no longer leaks outside of use locale scope" +.IP "Assignments of Windows sockets error codes to $! now prefer \fIerrno.h\fR values over \fBWSAGetLastError()\fR values" 4 +.IX Item "Assignments of Windows sockets error codes to $! now prefer errno.h values over WSAGetLastError() values" +.ie n .IP "Functions ""PerlIO_vsprintf"" and ""PerlIO_sprintf"" have been removed" 4 +.el .IP "Functions \f(CWPerlIO_vsprintf\fR and \f(CWPerlIO_sprintf\fR have been removed" 4 +.IX Item "Functions PerlIO_vsprintf and PerlIO_sprintf have been removed" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.ie n .IP "The ""/\eC/"" character class" 4 +.el .IP "The \f(CW/\eC/\fR character class" 4 +.IX Item "The /C/ character class" +.IP "Literal control characters in variable names" 4 +.IX Item "Literal control characters in variable names" +.ie n .IP "References to non-integers and non-positive integers in $/" 4 +.el .IP "References to non-integers and non-positive integers in \f(CW$/\fR" 4 +.IX Item "References to non-integers and non-positive integers in $/" +.IP "Character matching routines in POSIX" 4 +.IX Item "Character matching routines in POSIX" +.IP "Interpreter-based threads are now \fIdiscouraged\fR" 4 +.IX Item "Interpreter-based threads are now discouraged" +.IP "Module removals" 4 +.IX Item "Module removals" +.PD +CGI and its associated CGI:: packages, inc::latest, +Package::Constants, Module::Build and its associated Module::Build:: +packages +.IP "Utility removals" 4 +.IX Item "Utility removals" +find2perl, s2p, a2p +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.PD +Android, Bitrig, FreeMiNT, Synology +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +\&\f(CW\*(C`sfio\*(C'\fR, AT&T 3b1, DG/UX, EBCDIC +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +Cygwin, GNU/Hurd, Linux, Mac OS, MidnightBSD, Mixed-endian platforms, VMS, +Win32, WinCE +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP "Regular Expressions" 4 +.IX Item "Regular Expressions" +.IP "Perl 5 Debugger and \-d" 4 +.IX Item "Perl 5 Debugger and -d" +.IP "Lexical Subroutines" 4 +.IX Item "Lexical Subroutines" +.IP "Everything Else" 4 +.IX Item "Everything Else" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5184delta \- what is new for perl v5.18.4" +.IX Subsection "perl5184delta - what is new for perl v5.18.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +Win32 +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5182delta \- what is new for perl v5.18.2" +.IX Subsection "perl5182delta - what is new for perl v5.18.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5181delta \- what is new for perl v5.18.1" +.IX Subsection "perl5181delta - what is new for perl v5.18.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +AIX, MidnightBSD +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5180delta \- what is new for perl v5.18.0" +.IX Subsection "perl5180delta - what is new for perl v5.18.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "New mechanism for experimental features" 4 +.IX Item "New mechanism for experimental features" +.IP "Hash overhaul" 4 +.IX Item "Hash overhaul" +.IP "Upgrade to Unicode 6.2" 4 +.IX Item "Upgrade to Unicode 6.2" +.IP "Character name aliases may now include non\-Latin1\-range characters" 4 +.IX Item "Character name aliases may now include non-Latin1-range characters" +.IP "New DTrace probes" 4 +.IX Item "New DTrace probes" +.ie n .IP """${^LAST_FH}""" 4 +.el .IP \f(CW${^LAST_FH}\fR 4 +.IX Item "${^LAST_FH}" +.IP "Regular Expression Set Operations" 4 +.IX Item "Regular Expression Set Operations" +.IP "Lexical subroutines" 4 +.IX Item "Lexical subroutines" +.IP "Computed Labels" 4 +.IX Item "Computed Labels" +.IP "More CORE:: subs" 4 +.IX Item "More CORE:: subs" +.ie n .IP """kill"" with negative signal names" 4 +.el .IP "\f(CWkill\fR with negative signal names" 4 +.IX Item "kill with negative signal names" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "See also: hash overhaul" 4 +.IX Item "See also: hash overhaul" +.ie n .IP """Storable"" security warning in documentation" 4 +.el .IP "\f(CWStorable\fR security warning in documentation" 4 +.IX Item "Storable security warning in documentation" +.ie n .IP """Locale::Maketext"" allowed code injection via a malicious template" 4 +.el .IP "\f(CWLocale::Maketext\fR allowed code injection via a malicious template" 4 +.IX Item "Locale::Maketext allowed code injection via a malicious template" +.IP "Avoid calling memset with a negative count" 4 +.IX Item "Avoid calling memset with a negative count" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "See also: hash overhaul" 4 +.IX Item "See also: hash overhaul" +.ie n .IP "An unknown character name in ""\eN{...}"" is now a syntax error" 4 +.el .IP "An unknown character name in \f(CW\eN{...}\fR is now a syntax error" 4 +.IX Item "An unknown character name in N{...} is now a syntax error" +.ie n .IP "Formerly deprecated characters in ""\eN{}"" character name aliases are now errors." 4 +.el .IP "Formerly deprecated characters in \f(CW\eN{}\fR character name aliases are now errors." 4 +.IX Item "Formerly deprecated characters in N{} character name aliases are now errors." +.ie n .IP """\eN{BELL}"" now refers to U+1F514 instead of U+0007" 4 +.el .IP "\f(CW\eN{BELL}\fR now refers to U+1F514 instead of U+0007" 4 +.IX Item "N{BELL} now refers to U+1F514 instead of U+0007" +.IP "New Restrictions in Multi-Character Case-Insensitive Matching in Regular Expression Bracketed Character Classes" 4 +.IX Item "New Restrictions in Multi-Character Case-Insensitive Matching in Regular Expression Bracketed Character Classes" +.IP "Explicit rules for variable names and identifiers" 4 +.IX Item "Explicit rules for variable names and identifiers" +.IP "Vertical tabs are now whitespace" 4 +.IX Item "Vertical tabs are now whitespace" +.ie n .IP """/(?{})/"" and ""/(??{})/"" have been heavily reworked" 4 +.el .IP "\f(CW/(?{})/\fR and \f(CW/(??{})/\fR have been heavily reworked" 4 +.IX Item "/(?{})/ and /(??{})/ have been heavily reworked" +.IP "Stricter parsing of substitution replacement" 4 +.IX Item "Stricter parsing of substitution replacement" +.ie n .IP """given"" now aliases the global $_" 4 +.el .IP "\f(CWgiven\fR now aliases the global \f(CW$_\fR" 4 +.IX Item "given now aliases the global $_" +.IP "The smartmatch family of features are now experimental" 4 +.IX Item "The smartmatch family of features are now experimental" +.ie n .IP "Lexical $_ is now experimental" 4 +.el .IP "Lexical \f(CW$_\fR is now experimental" 4 +.IX Item "Lexical $_ is now experimental" +.ie n .IP "\fBreadline()\fR with ""$/ = \eN"" now reads N characters, not N bytes" 4 +.el .IP "\fBreadline()\fR with \f(CW$/ = \eN\fR now reads N characters, not N bytes" 4 +.IX Item "readline() with $/ = N now reads N characters, not N bytes" +.ie n .IP "Overridden ""glob"" is now passed one argument" 4 +.el .IP "Overridden \f(CWglob\fR is now passed one argument" 4 +.IX Item "Overridden glob is now passed one argument" +.IP "Here doc parsing" 4 +.IX Item "Here doc parsing" +.IP "Alphanumeric operators must now be separated from the closing delimiter of regular expressions" 4 +.IX Item "Alphanumeric operators must now be separated from the closing delimiter of regular expressions" +.IP "qw(...) can no longer be used as parentheses" 4 +.IX Item "qw(...) can no longer be used as parentheses" +.IP "Interaction of lexical and default warnings" 4 +.IX Item "Interaction of lexical and default warnings" +.ie n .IP """state sub"" and ""our sub""" 4 +.el .IP "\f(CWstate sub\fR and \f(CWour sub\fR" 4 +.IX Item "state sub and our sub" +.IP "Defined values stored in environment are forced to byte strings" 4 +.IX Item "Defined values stored in environment are forced to byte strings" +.ie n .IP """require"" dies for unreadable files" 4 +.el .IP "\f(CWrequire\fR dies for unreadable files" 4 +.IX Item "require dies for unreadable files" +.ie n .IP """gv_fetchmeth_*"" and SUPER" 4 +.el .IP "\f(CWgv_fetchmeth_*\fR and SUPER" 4 +.IX Item "gv_fetchmeth_* and SUPER" +.ie n .IP """split""'s first argument is more consistently interpreted" 4 +.el .IP "\f(CWsplit\fR's first argument is more consistently interpreted" 4 +.IX Item "split's first argument is more consistently interpreted" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.IP "Module removals" 4 +.IX Item "Module removals" +.PD +encoding, Archive::Extract, B::Lint, B::Lint::Debug, +CPANPLUS and all included \f(CW\*(C`CPANPLUS::*\*(C'\fR modules, +Devel::InnerPackage, Log::Message, Log::Message::Config, +Log::Message::Handlers, Log::Message::Item, Log::Message::Simple, +Module::Pluggable, Module::Pluggable::Object, Object::Accessor, +Pod::LaTeX, Term::UI, Term::UI::History +.IP "Deprecated Utilities" 4 +.IX Item "Deprecated Utilities" +cpanp, \f(CW\*(C`cpanp\-run\-perl\*(C'\fR, cpan2dist, pod2latex +.IP PL_sv_objcount 4 +.IX Item "PL_sv_objcount" +.PD 0 +.ie n .IP "Five additional characters should be escaped in patterns with ""/x""" 4 +.el .IP "Five additional characters should be escaped in patterns with \f(CW/x\fR" 4 +.IX Item "Five additional characters should be escaped in patterns with /x" +.IP "User-defined charnames with surprising whitespace" 4 +.IX Item "User-defined charnames with surprising whitespace" +.IP "Various XS-callable functions are now deprecated" 4 +.IX Item "Various XS-callable functions are now deprecated" +.IP "Certain rare uses of backslashes within regexes are now deprecated" 4 +.IX Item "Certain rare uses of backslashes within regexes are now deprecated" +.ie n .IP "Splitting the tokens ""(?"" and ""(*"" in regular expressions" 4 +.el .IP "Splitting the tokens \f(CW(?\fR and \f(CW(*\fR in regular expressions" 4 +.IX Item "Splitting the tokens (? and (* in regular expressions" +.IP "Pre-PerlIO IO implementations" 4 +.IX Item "Pre-PerlIO IO implementations" +.RE +.RS 4 +.RE +.IP "Future Deprecations" 4 +.IX Item "Future Deprecations" +.PD +DG/UX, NeXT +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.PD +BeOS, UTS Global, VM/ESA, MPE/IX, EPOC, Rhapsody +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.RE +.RS 4 +.RE +.PD 0 +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5163delta \- what is new for perl v5.16.3" +.IX Subsection "perl5163delta - what is new for perl v5.16.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2013\-1667: memory exhaustion with arbitrary hash keys" 4 +.IX Item "CVE-2013-1667: memory exhaustion with arbitrary hash keys" +.IP "wrap-around with IO on long strings" 4 +.IX Item "wrap-around with IO on long strings" +.IP "memory leak in Encode" 4 +.IX Item "memory leak in Encode" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP Deprecations 4 +.IX Item "Deprecations" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5162delta \- what is new for perl v5.16.2" +.IX Subsection "perl5162delta - what is new for perl v5.16.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.PD +configuration should no longer be confused by ls colorization +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.PD 0 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +AIX +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +fix /\eh/ equivalence with /[\eh]/ +.IP "Known Problems" 4 +.IX Item "Known Problems" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5161delta \- what is new for perl v5.16.1" +.IX Subsection "perl5161delta - what is new for perl v5.16.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "an off-by-two error in Scalar-List-Util has been fixed" 4 +.IX Item "an off-by-two error in Scalar-List-Util has been fixed" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +VMS +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5160delta \- what is new for perl v5.16.0" +.IX Subsection "perl5160delta - what is new for perl v5.16.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Notice 4 +.IX Item "Notice" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP """use \fIVERSION\fR""" 4 +.el .IP "\f(CWuse \fR\f(CIVERSION\fR\f(CW\fR" 4 +.IX Item "use VERSION" +.ie n .IP """_\|_SUB_\|_""" 4 +.el .IP \f(CW_\|_SUB_\|_\fR 4 +.IX Item "__SUB__" +.IP "New and Improved Built-ins" 4 +.IX Item "New and Improved Built-ins" +.IP "Unicode Support" 4 +.IX Item "Unicode Support" +.IP "XS Changes" 4 +.IX Item "XS Changes" +.IP "Changes to Special Variables" 4 +.IX Item "Changes to Special Variables" +.IP "Debugger Changes" 4 +.IX Item "Debugger Changes" +.ie n .IP "The ""CORE"" Namespace" 4 +.el .IP "The \f(CWCORE\fR Namespace" 4 +.IX Item "The CORE Namespace" +.IP "Other Changes" 4 +.IX Item "Other Changes" +.RE +.RS 4 +.RE +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "Use is_utf8_char_buf() and not is_utf8_char()" 4 +.el .IP "Use \f(CWis_utf8_char_buf()\fR and not \f(CWis_utf8_char()\fR" 4 +.IX Item "Use is_utf8_char_buf() and not is_utf8_char()" +.IP "Malformed UTF\-8 input could cause attempts to read beyond the end of the buffer" 4 +.IX Item "Malformed UTF-8 input could cause attempts to read beyond the end of the buffer" +.ie n .IP "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.el .IP "\f(CWFile::Glob::bsd_glob()\fR memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.IX Item "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)." +.ie n .IP "Privileges are now set correctly when assigning to $(" 4 +.el .IP "Privileges are now set correctly when assigning to \f(CW$(\fR" 4 +.IX Item "Privileges are now set correctly when assigning to $(" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.IP "Don't read the Unicode data base files in \fIlib/unicore\fR" 4 +.IX Item "Don't read the Unicode data base files in lib/unicore" +.ie n .IP "XS functions is_utf8_char(), utf8_to_uvchr() and utf8_to_uvuni()" 4 +.el .IP "XS functions \f(CWis_utf8_char()\fR, \f(CWutf8_to_uvchr()\fR and \f(CWutf8_to_uvuni()\fR" 4 +.IX Item "XS functions is_utf8_char(), utf8_to_uvchr() and utf8_to_uvuni()" +.RE +.RS 4 +.RE +.IP "Future Deprecations" 4 +.IX Item "Future Deprecations" +.RS 4 +.IP "Core Modules" 4 +.IX Item "Core Modules" +.IP "Platforms with no supporting programmers" 4 +.IX Item "Platforms with no supporting programmers" +.IP "Other Future Deprecations" 4 +.IX Item "Other Future Deprecations" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Special blocks called in void context" 4 +.IX Item "Special blocks called in void context" +.ie n .IP "The ""overloading"" pragma and regexp objects" 4 +.el .IP "The \f(CWoverloading\fR pragma and regexp objects" 4 +.IX Item "The overloading pragma and regexp objects" +.IP "Two XS typemap Entries removed" 4 +.IX Item "Two XS typemap Entries removed" +.IP "Unicode 6.1 has incompatibilities with Unicode 6.0" 4 +.IX Item "Unicode 6.1 has incompatibilities with Unicode 6.0" +.IP "Borland compiler" 4 +.IX Item "Borland compiler" +.IP "Certain deprecated Unicode properties are no longer supported by default" 4 +.IX Item "Certain deprecated Unicode properties are no longer supported by default" +.IP "Dereferencing IO thingies as typeglobs" 4 +.IX Item "Dereferencing IO thingies as typeglobs" +.IP "User-defined case-changing operations" 4 +.IX Item "User-defined case-changing operations" +.IP "XSUBs are now 'static'" 4 +.IX Item "XSUBs are now 'static'" +.IP "Weakening read-only references" 4 +.IX Item "Weakening read-only references" +.IP "Tying scalars that hold typeglobs" 4 +.IX Item "Tying scalars that hold typeglobs" +.ie n .IP "IPC::Open3 no longer provides xfork(), xclose_on_exec() and xpipe_anon()" 4 +.el .IP "IPC::Open3 no longer provides \f(CWxfork()\fR, \f(CWxclose_on_exec()\fR and \f(CWxpipe_anon()\fR" 4 +.IX Item "IPC::Open3 no longer provides xfork(), xclose_on_exec() and xpipe_anon()" +.ie n .IP "$$ no longer caches PID" 4 +.el .IP "\f(CW$$\fR no longer caches PID" 4 +.IX Item "$$ no longer caches PID" +.ie n .IP "$$ and getppid() no longer emulate POSIX semantics under LinuxThreads" 4 +.el .IP "\f(CW$$\fR and \f(CWgetppid()\fR no longer emulate POSIX semantics under LinuxThreads" 4 +.IX Item "$$ and getppid() no longer emulate POSIX semantics under LinuxThreads" +.ie n .IP "$<, $>, $( and $) are no longer cached" 4 +.el .IP "\f(CW$<\fR, \f(CW$>\fR, \f(CW$(\fR and \f(CW$)\fR are no longer cached" 4 +.IX Item "$<, $>, $( and $) are no longer cached" +.ie n .IP "Which Non-ASCII characters get quoted by ""quotemeta"" and ""\eQ"" has changed" 4 +.el .IP "Which Non-ASCII characters get quoted by \f(CWquotemeta\fR and \f(CW\eQ\fR has changed" 4 +.IX Item "Which Non-ASCII characters get quoted by quotemeta and Q has changed" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Deprecated Modules" 4 +.IX Item "Deprecated Modules" +.PD +Version::Requirements +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.PD 0 +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.IP "Removed Documentation" 4 +.IX Item "Removed Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Removed Errors" 4 +.IX Item "Removed Errors" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP "Array and hash" 4 +.IX Item "Array and hash" +.IP "C API fixes" 4 +.IX Item "C API fixes" +.IP "Compile-time hints" 4 +.IX Item "Compile-time hints" +.IP "Copy-on-write scalars" 4 +.IX Item "Copy-on-write scalars" +.IP "The debugger" 4 +.IX Item "The debugger" +.IP "Dereferencing operators" 4 +.IX Item "Dereferencing operators" +.IP "Filehandle, last-accessed" 4 +.IX Item "Filehandle, last-accessed" +.ie n .IP "Filetests and ""stat""" 4 +.el .IP "Filetests and \f(CWstat\fR" 4 +.IX Item "Filetests and stat" +.IP Formats 4 +.IX Item "Formats" +.ie n .IP """given"" and ""when""" 4 +.el .IP "\f(CWgiven\fR and \f(CWwhen\fR" 4 +.IX Item "given and when" +.ie n .IP "The ""glob"" operator" 4 +.el .IP "The \f(CWglob\fR operator" 4 +.IX Item "The glob operator" +.IP "Lvalue subroutines" 4 +.IX Item "Lvalue subroutines" +.IP Overloading 4 +.IX Item "Overloading" +.IP "Prototypes of built-in keywords" 4 +.IX Item "Prototypes of built-in keywords" +.IP "Regular expressions" 4 +.IX Item "Regular expressions" +.IP Smartmatching 4 +.IX Item "Smartmatching" +.ie n .IP "The ""sort"" operator" 4 +.el .IP "The \f(CWsort\fR operator" 4 +.IX Item "The sort operator" +.ie n .IP "The ""substr"" operator" 4 +.el .IP "The \f(CWsubstr\fR operator" 4 +.IX Item "The substr operator" +.IP "Support for embedded nulls" 4 +.IX Item "Support for embedded nulls" +.IP "Threading bugs" 4 +.IX Item "Threading bugs" +.IP "Tied variables" 4 +.IX Item "Tied variables" +.IP "Version objects and vstrings" 4 +.IX Item "Version objects and vstrings" +.IP "Warnings, redefinition" 4 +.IX Item "Warnings, redefinition" +.IP "Warnings, ""Uninitialized""" 4 +.IX Item "Warnings, ""Uninitialized""" +.IP "Weak references" 4 +.IX Item "Weak references" +.IP "Other notable fixes" 4 +.IX Item "Other notable fixes" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5144delta \- what is new for perl v5.14.4" +.IX Subsection "perl5144delta - what is new for perl v5.14.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "CVE\-2013\-1667: memory exhaustion with arbitrary hash keys" 4 +.IX Item "CVE-2013-1667: memory exhaustion with arbitrary hash keys" +.IP "memory leak in Encode" 4 +.IX Item "memory leak in Encode" +.IP "[perl #111594] Socket::unpack_sockaddr_un heap-buffer-overflow" 4 +.IX Item "[perl #111594] Socket::unpack_sockaddr_un heap-buffer-overflow" +.IP "[perl #111586] SDBM_File: fix off-by-one access to global "".dir""" 4 +.IX Item "[perl #111586] SDBM_File: fix off-by-one access to global "".dir""" +.IP "off-by-two error in List::Util" 4 +.IX Item "off-by-two error in List::Util" +.IP "[perl #115994] fix segv in regcomp.\fBc:S_join_exact()\fR" 4 +.IX Item "[perl #115994] fix segv in regcomp.c:S_join_exact()" +.IP "[perl #115992] PL_eval_start use-after-free" 4 +.IX Item "[perl #115992] PL_eval_start use-after-free" +.IP "wrap-around with IO on long strings" 4 +.IX Item "wrap-around with IO on long strings" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP Deprecations 4 +.IX Item "Deprecations" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.PD +Socket, SDBM_File, List::Util +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.PD 0 +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +VMS +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5143delta \- what is new for perl v5.14.3" +.IX Subsection "perl5143delta - what is new for perl v5.14.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP """Digest"" unsafe use of eval (CVE\-2011\-3597)" 4 +.el .IP "\f(CWDigest\fR unsafe use of eval (CVE\-2011\-3597)" 4 +.IX Item "Digest unsafe use of eval (CVE-2011-3597)" +.IP "Heap buffer overrun in 'x' string repeat operator (CVE\-2012\-5195)" 4 +.IX Item "Heap buffer overrun in 'x' string repeat operator (CVE-2012-5195)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP Deprecations 4 +.IX Item "Deprecations" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +FreeBSD, Solaris and NetBSD, HP-UX, Linux, Mac OS X, GNU/Hurd, NetBSD +.RE +.RS 4 +.RE +.IP "Bug Fixes" 4 +.IX Item "Bug Fixes" +.PD 0 +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5142delta \- what is new for perl v5.14.2" +.IX Subsection "perl5142delta - what is new for perl v5.14.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.el .IP "\f(CWFile::Glob::bsd_glob()\fR memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.IX Item "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)." +.ie n .IP """Encode"" decode_xs n\-byte heap-overflow (CVE\-2011\-2939)" 4 +.el .IP "\f(CWEncode\fR decode_xs n\-byte heap-overflow (CVE\-2011\-2939)" 4 +.IX Item "Encode decode_xs n-byte heap-overflow (CVE-2011-2939)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP Deprecations 4 +.IX Item "Deprecations" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.PD +HP-UX PA\-RISC/64 now supports gcc\-4.x, Building on OS X 10.7 Lion and Xcode +4 works again +.RE +.RS 4 +.RE +.IP "Bug Fixes" 4 +.IX Item "Bug Fixes" +.PD 0 +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5141delta \- what is new for perl v5.14.1" +.IX Subsection "perl5141delta - what is new for perl v5.14.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP Security 4 +.IX Item "Security" +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP Deprecations 4 +.IX Item "Deprecations" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragmata" 4 +.IX Item "Updated Modules and Pragmata" +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP Testing 4 +.IX Item "Testing" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.RE +.RS 4 +.RE +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.IP "Bug Fixes" 4 +.IX Item "Bug Fixes" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5140delta \- what is new for perl v5.14.0" +.IX Subsection "perl5140delta - what is new for perl v5.14.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Notice 4 +.IX Item "Notice" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP Unicode 4 +.IX Item "Unicode" +.IP "Regular Expressions" 4 +.IX Item "Regular Expressions" +.IP "Syntactical Enhancements" 4 +.IX Item "Syntactical Enhancements" +.IP "Exception Handling" 4 +.IX Item "Exception Handling" +.IP "Other Enhancements" 4 +.IX Item "Other Enhancements" +.PD +\&\f(CW\*(C`\-d:\-foo\*(C'\fR, \f(CW\*(C`\-d:\-foo=bar\*(C'\fR +.IP "New C APIs" 4 +.IX Item "New C APIs" +.RE +.RS 4 +.RE +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.IP "User-defined regular expression properties" 4 +.IX Item "User-defined regular expression properties" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Regular Expressions and String Escapes" 4 +.IX Item "Regular Expressions and String Escapes" +.IP "Stashes and Package Variables" 4 +.IX Item "Stashes and Package Variables" +.IP "Changes to Syntax or to Perl Operators" 4 +.IX Item "Changes to Syntax or to Perl Operators" +.IP "Threads and Processes" 4 +.IX Item "Threads and Processes" +.IP Configuration 4 +.IX Item "Configuration" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.RS 4 +.IP "Omitting a space between a regular expression and subsequent word" 4 +.IX Item "Omitting a space between a regular expression and subsequent word" +.ie n .IP """\ec\fIX\fR""" 4 +.el .IP \f(CW\ec\fR\f(CIX\fR\f(CW\fR 4 +.IX Item "cX" +.ie n .IP """\eb{"" and ""\eB{""" 4 +.el .IP "\f(CW""\eb{""\fR and \f(CW""\eB{""\fR" 4 +.IX Item """b{"" and ""B{""" +.IP "Perl 4\-era .pl libraries" 4 +.IX Item "Perl 4-era .pl libraries" +.ie n .IP "List assignment to $[" 4 +.el .IP "List assignment to \f(CW$[\fR" 4 +.IX Item "List assignment to $[" +.IP "Use of qw(...) as parentheses" 4 +.IX Item "Use of qw(...) as parentheses" +.ie n .IP """\eN{BELL}""" 4 +.el .IP \f(CW\eN{BELL}\fR 4 +.IX Item "N{BELL}" +.ie n .IP """?PATTERN?""" 4 +.el .IP \f(CW?PATTERN?\fR 4 +.IX Item "?PATTERN?" +.IP "Tie functions on scalars holding typeglobs" 4 +.IX Item "Tie functions on scalars holding typeglobs" +.IP "User-defined case-mapping" 4 +.IX Item "User-defined case-mapping" +.IP "Deprecated modules" 4 +.IX Item "Deprecated modules" +.PD +Devel::DProf +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.RS 4 +.PD 0 +.IP """Safe signals"" optimisation" 4 +.IX Item """Safe signals"" optimisation" +.IP "Optimisation of \fBshift()\fR and \fBpop()\fR calls without arguments" 4 +.IX Item "Optimisation of shift() and pop() calls without arguments" +.IP "Optimisation of regexp engine string comparison work" 4 +.IX Item "Optimisation of regexp engine string comparison work" +.IP "Regular expression compilation speed-up" 4 +.IX Item "Regular expression compilation speed-up" +.IP "String appending is 100 times faster" 4 +.IX Item "String appending is 100 times faster" +.ie n .IP "Eliminate ""PL_*"" accessor functions under ithreads" 4 +.el .IP "Eliminate \f(CWPL_*\fR accessor functions under ithreads" 4 +.IX Item "Eliminate PL_* accessor functions under ithreads" +.IP "Freeing weak references" 4 +.IX Item "Freeing weak references" +.IP "Lexical array and hash assignments" 4 +.IX Item "Lexical array and hash assignments" +.ie n .IP "@_ uses less memory" 4 +.el .IP "\f(CW@_\fR uses less memory" 4 +.IX Item "@_ uses less memory" +.IP "Size optimisations to SV and HV structures" 4 +.IX Item "Size optimisations to SV and HV structures" +.IP "Memory consumption improvements to Exporter" 4 +.IX Item "Memory consumption improvements to Exporter" +.IP "Memory savings for weak references" 4 +.IX Item "Memory savings for weak references" +.ie n .IP """%+"" and ""%\-"" use less memory" 4 +.el .IP "\f(CW%+\fR and \f(CW%\-\fR use less memory" 4 +.IX Item "%+ and %- use less memory" +.IP "Multiple small improvements to threads" 4 +.IX Item "Multiple small improvements to threads" +.IP "Adjacent pairs of nextstate opcodes are now optimized away" 4 +.IX Item "Adjacent pairs of nextstate opcodes are now optimized away" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated Modules and Pragma" 4 +.IX Item "Updated Modules and Pragma" +.PD +much less configuration dialog hassle, support for \fIMETA/MYMETA.json\fR, +support for local::lib, support for HTTP::Tiny to reduce the +dependency on FTP sites, automatic mirror selection, iron out all known +bugs in configure_requires, support for distributions compressed with +\&\fBbzip2\fR\|(1), allow \fIFoo/Bar.pm\fR on the command line to mean \f(CW\*(C`Foo::Bar\*(C'\fR, +\&\fBcharinfo()\fR, \fBcharscript()\fR, \fBcharblock()\fR +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +.RE +.RS 4 +.RE +.PD 0 +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP Diagnostics 4 +.IX Item "Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.PD +Closure prototype called, Insecure user-defined property \f(CW%s\fR, panic: gp_free +failed to free glob pointer \- something is repeatedly re-creating entries, +Parsing code internal error (%s), refcnt: fd \f(CW%d\fR%s, Regexp modifier "/%c" +may not appear twice, Regexp modifiers "/%c" and "/%c" are mutually +exclusive, Using !~ with \f(CW%s\fR doesn't make sense, "\eb{" is deprecated; use +"\eb\e{" instead, "\eB{" is deprecated; use "\eB\e{" instead, Operation "%s" +returns its argument for .., Use of qw(...) as parentheses is deprecated +.IP "Changes to Existing Diagnostics" 4 +.IX Item "Changes to Existing Diagnostics" +.RE +.RS 4 +.RE +.PD 0 +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Configuration and Compilation" 4 +.IX Item "Configuration and Compilation" +.IP "Platform Support" 4 +.IX Item "Platform Support" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.PD +AIX +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +Apollo DomainOS, MacOS Classic +.IP "Platform-Specific Notes" 4 +.IX Item "Platform-Specific Notes" +.RE +.RS 4 +.RE +.PD 0 +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.RS 4 +.IP "New APIs" 4 +.IX Item "New APIs" +.IP "C API Changes" 4 +.IX Item "C API Changes" +.IP "Deprecated C APIs" 4 +.IX Item "Deprecated C APIs" +.PD +\&\f(CW\*(C`Perl_ptr_table_clear\*(C'\fR, \f(CW\*(C`sv_compile_2op\*(C'\fR, \f(CW\*(C`find_rundefsvoffset\*(C'\fR, +\&\f(CW\*(C`CALL_FPTR\*(C'\fR and \f(CW\*(C`CPERLscope\*(C'\fR +.IP "Other Internal Changes" 4 +.IX Item "Other Internal Changes" +.RE +.RS 4 +.RE +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP I/O 4 +.IX Item "I/O" +.IP "Regular Expression Bug Fixes" 4 +.IX Item "Regular Expression Bug Fixes" +.IP "Syntax/Parsing Bugs" 4 +.IX Item "Syntax/Parsing Bugs" +.IP "Stashes, Globs and Method Lookup" 4 +.IX Item "Stashes, Globs and Method Lookup" +.PD +Aliasing packages by assigning to globs [perl #77358], Deleting packages by +deleting their containing stash elements, Undefining the glob containing a +package (\f(CW\*(C`undef *Foo::\*(C'\fR), Undefining an ISA glob (\f(CW\*(C`undef *Foo::ISA\*(C'\fR), +Deleting an ISA stash element (\f(CW\*(C`delete $Foo::{ISA}\*(C'\fR), Sharing \f(CW@ISA\fR arrays +between classes (via \f(CW\*(C`*Foo::ISA = \e@Bar::ISA\*(C'\fR or \f(CW\*(C`*Foo::ISA = *Bar::ISA\*(C'\fR) +[perl #77238] +.IP Unicode 4 +.IX Item "Unicode" +.PD 0 +.IP "Ties, Overloading and Other Magic" 4 +.IX Item "Ties, Overloading and Other Magic" +.IP "The Debugger" 4 +.IX Item "The Debugger" +.IP Threads 4 +.IX Item "Threads" +.IP "Scoping and Subroutines" 4 +.IX Item "Scoping and Subroutines" +.IP Signals 4 +.IX Item "Signals" +.IP "Miscellaneous Memory Leaks" 4 +.IX Item "Miscellaneous Memory Leaks" +.IP "Memory Corruption and Crashes" 4 +.IX Item "Memory Corruption and Crashes" +.IP "Fixes to Various Perl Operators" 4 +.IX Item "Fixes to Various Perl Operators" +.IP "Bugs Relating to the C API" 4 +.IX Item "Bugs Relating to the C API" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Errata 4 +.IX Item "Errata" +.RS 4 +.IP "\fBkeys()\fR, \fBvalues()\fR, and \fBeach()\fR work on arrays" 4 +.IX Item "keys(), values(), and each() work on arrays" +.ie n .IP "\fBsplit()\fR and @_" 4 +.el .IP "\fBsplit()\fR and \f(CW@_\fR" 4 +.IX Item "split() and @_" +.RE +.RS 4 +.RE +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5125delta \- what is new for perl v5.12.5" +.IX Subsection "perl5125delta - what is new for perl v5.12.5" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Security 4 +.IX Item "Security" +.RS 4 +.ie n .IP """Encode"" decode_xs n\-byte heap-overflow (CVE\-2011\-2939)" 4 +.el .IP "\f(CWEncode\fR decode_xs n\-byte heap-overflow (CVE\-2011\-2939)" 4 +.IX Item "Encode decode_xs n-byte heap-overflow (CVE-2011-2939)" +.ie n .IP "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.el .IP "\f(CWFile::Glob::bsd_glob()\fR memory error with GLOB_ALTDIRFUNC (CVE\-2011\-2728)." 4 +.IX Item "File::Glob::bsd_glob() memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)." +.IP "Heap buffer overrun in 'x' string repeat operator (CVE\-2012\-5195)" 4 +.IX Item "Heap buffer overrun in 'x' string repeat operator (CVE-2012-5195)" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +.RE +.RS 4 +.RE +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RS 4 +.IP perlebcdic 4 +.IX Item "perlebcdic" +.IP perlunicode 4 +.IX Item "perlunicode" +.IP perluniprops 4 +.IX Item "perluniprops" +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Platform Specific Changes" 4 +.IX Item "Platform Specific Changes" +.PD +Mac OS X, NetBSD +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP Errata 4 +.IX Item "Errata" +.RS 4 +.ie n .IP "\fBsplit()\fR and @_" 4 +.el .IP "\fBsplit()\fR and \f(CW@_\fR" 4 +.IX Item "split() and @_" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5124delta \- what is new for perl v5.12.4" +.IX Subsection "perl5124delta - what is new for perl v5.12.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.IP Testing 4 +.IX Item "Testing" +.IP Documentation 4 +.IX Item "Documentation" +.IP "Platform Specific Notes" 4 +.IX Item "Platform Specific Notes" +.PD +Linux +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.PD 0 +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5123delta \- what is new for perl v5.12.3" +.IX Subsection "perl5123delta - what is new for perl v5.12.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP """keys"", ""values"" work on arrays" 4 +.el .IP "\f(CWkeys\fR, \f(CWvalues\fR work on arrays" 4 +.IX Item "keys, values work on arrays" +.RE +.RS 4 +.RE +.IP "Bug Fixes" 4 +.IX Item "Bug Fixes" +.IP "Platform Specific Notes" 4 +.IX Item "Platform Specific Notes" +.PD +Solaris, VMS, VOS +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.PD 0 +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5122delta \- what is new for perl v5.12.2" +.IX Subsection "perl5122delta - what is new for perl v5.12.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Pragmata Changes" 4 +.IX Item "Pragmata Changes" +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +.PD +\&\f(CW\*(C`Carp\*(C'\fR, \f(CW\*(C`CPANPLUS\*(C'\fR, \f(CW\*(C`File::Glob\*(C'\fR, \f(CW\*(C`File::Copy\*(C'\fR, \f(CW\*(C`File::Spec\*(C'\fR +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.PD 0 +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Configuration improvements" 4 +.IX Item "Configuration improvements" +.IP "Compilation improvements" 4 +.IX Item "Compilation improvements" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Platform Specific Notes" 4 +.IX Item "Platform Specific Notes" +.RS 4 +.IP AIX 4 +.IX Item "AIX" +.IP Windows 4 +.IX Item "Windows" +.IP VMS 4 +.IX Item "VMS" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5121delta \- what is new for perl v5.12.1" +.IX Subsection "perl5121delta - what is new for perl v5.12.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Pragmata Changes" 4 +.IX Item "Pragmata Changes" +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +.RE +.RS 4 +.RE +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.IP Testing 4 +.IX Item "Testing" +.RS 4 +.IP "Testing Improvements" 4 +.IX Item "Testing Improvements" +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Configuration improvements" 4 +.IX Item "Configuration improvements" +.RE +.RS 4 +.RE +.IP "Bug Fixes" 4 +.IX Item "Bug Fixes" +.IP "Platform Specific Notes" 4 +.IX Item "Platform Specific Notes" +.RS 4 +.IP HP-UX 4 +.IX Item "HP-UX" +.IP AIX 4 +.IX Item "AIX" +.IP "FreeBSD 7" 4 +.IX Item "FreeBSD 7" +.IP VMS 4 +.IX Item "VMS" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5120delta \- what is new for perl v5.12.0" +.IX Subsection "perl5120delta - what is new for perl v5.12.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP "New ""package NAME VERSION"" syntax" 4 +.el .IP "New \f(CWpackage NAME VERSION\fR syntax" 4 +.IX Item "New package NAME VERSION syntax" +.ie n .IP "The ""..."" operator" 4 +.el .IP "The \f(CW...\fR operator" 4 +.IX Item "The ... operator" +.IP "Implicit strictures" 4 +.IX Item "Implicit strictures" +.IP "Unicode improvements" 4 +.IX Item "Unicode improvements" +.IP "Y2038 compliance" 4 +.IX Item "Y2038 compliance" +.IP "qr overloading" 4 +.IX Item "qr overloading" +.IP "Pluggable keywords" 4 +.IX Item "Pluggable keywords" +.IP "APIs for more internals" 4 +.IX Item "APIs for more internals" +.IP "Overridable function lookup" 4 +.IX Item "Overridable function lookup" +.IP "A proper interface for pluggable Method Resolution Orders" 4 +.IX Item "A proper interface for pluggable Method Resolution Orders" +.ie n .IP """\eN"" experimental regex escape" 4 +.el .IP "\f(CW\eN\fR experimental regex escape" 4 +.IX Item "N experimental regex escape" +.IP "DTrace support" 4 +.IX Item "DTrace support" +.ie n .IP "Support for ""configure_requires"" in CPAN module metadata" 4 +.el .IP "Support for \f(CWconfigure_requires\fR in CPAN module metadata" 4 +.IX Item "Support for configure_requires in CPAN module metadata" +.ie n .IP """each"", ""keys"", ""values"" are now more flexible" 4 +.el .IP "\f(CWeach\fR, \f(CWkeys\fR, \f(CWvalues\fR are now more flexible" 4 +.IX Item "each, keys, values are now more flexible" +.ie n .IP """when"" as a statement modifier" 4 +.el .IP "\f(CWwhen\fR as a statement modifier" 4 +.IX Item "when as a statement modifier" +.ie n .IP "$, flexibility" 4 +.el .IP "\f(CW$,\fR flexibility" 4 +.IX Item "$, flexibility" +.IP "// in when clauses" 4 +.IX Item "// in when clauses" +.IP "Enabling warnings from your shell environment" 4 +.IX Item "Enabling warnings from your shell environment" +.ie n .IP """delete local""" 4 +.el .IP "\f(CWdelete local\fR" 4 +.IX Item "delete local" +.IP "New support for Abstract namespace sockets" 4 +.IX Item "New support for Abstract namespace sockets" +.IP "32\-bit limit on substr arguments removed" 4 +.IX Item "32-bit limit on substr arguments removed" +.RE +.RS 4 +.RE +.IP "Potentially Incompatible Changes" 4 +.IX Item "Potentially Incompatible Changes" +.RS 4 +.IP "Deprecations warn by default" 4 +.IX Item "Deprecations warn by default" +.IP "Version number formats" 4 +.IX Item "Version number formats" +.ie n .IP "@INC reorganization" 4 +.el .IP "\f(CW@INC\fR reorganization" 4 +.IX Item "@INC reorganization" +.IP "REGEXPs are now first class" 4 +.IX Item "REGEXPs are now first class" +.IP "Switch statement changes" 4 +.IX Item "Switch statement changes" +.PD +flip-flop operators, defined-or operator +.IP "Smart match changes" 4 +.IX Item "Smart match changes" +.PD 0 +.IP "Other potentially incompatible changes" 4 +.IX Item "Other potentially incompatible changes" +.RE +.RS 4 +.RE +.IP Deprecations 4 +.IX Item "Deprecations" +.PD +suidperl, Use of \f(CW\*(C`:=\*(C'\fR to mean an empty attribute list, \f(CW\*(C`UNIVERSAL\->import()\*(C'\fR, Use of "goto" to jump into a construct, Custom +character names in \eN{name} that don't look like names, Deprecated Modules, +Class::ISA, Pod::Plainer, Shell, Switch, Assignment to $[, Use +of the attribute :locked on subroutines, Use of "locked" with the +attributes pragma, Use of "unique" with the attributes pragma, Perl_pmflag, +Numerous Perl 4\-era libraries +.IP "Unicode overhaul" 4 +.IX Item "Unicode overhaul" +.PD 0 +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.PD +\&\f(CW\*(C`autodie\*(C'\fR, \f(CW\*(C`Compress::Raw::Bzip2\*(C'\fR, \f(CW\*(C`overloading\*(C'\fR, \f(CW\*(C`parent\*(C'\fR, +\&\f(CW\*(C`Parse::CPAN::Meta\*(C'\fR, \f(CW\*(C`VMS::DCLsym\*(C'\fR, \f(CW\*(C`VMS::Stdio\*(C'\fR, +\&\f(CW\*(C`XS::APItest::KeywordRPN\*(C'\fR +.IP "Updated Pragmata" 4 +.IX Item "Updated Pragmata" +\&\f(CW\*(C`base\*(C'\fR, \f(CW\*(C`bignum\*(C'\fR, \f(CW\*(C`charnames\*(C'\fR, \f(CW\*(C`constant\*(C'\fR, \f(CW\*(C`diagnostics\*(C'\fR, \f(CW\*(C`feature\*(C'\fR, +\&\f(CW\*(C`less\*(C'\fR, \f(CW\*(C`lib\*(C'\fR, \f(CW\*(C`mro\*(C'\fR, \f(CW\*(C`overload\*(C'\fR, \f(CW\*(C`threads\*(C'\fR, \f(CW\*(C`threads::shared\*(C'\fR, +\&\f(CW\*(C`version\*(C'\fR, \f(CW\*(C`warnings\*(C'\fR +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +\&\f(CW\*(C`Archive::Extract\*(C'\fR, \f(CW\*(C`Archive::Tar\*(C'\fR, \f(CW\*(C`Attribute::Handlers\*(C'\fR, +\&\f(CW\*(C`AutoLoader\*(C'\fR, \f(CW\*(C`B::Concise\*(C'\fR, \f(CW\*(C`B::Debug\*(C'\fR, \f(CW\*(C`B::Deparse\*(C'\fR, \f(CW\*(C`B::Lint\*(C'\fR, +\&\f(CW\*(C`CGI\*(C'\fR, \f(CW\*(C`Class::ISA\*(C'\fR, \f(CW\*(C`Compress::Raw::Zlib\*(C'\fR, \f(CW\*(C`CPAN\*(C'\fR, \f(CW\*(C`CPANPLUS\*(C'\fR, +\&\f(CW\*(C`CPANPLUS::Dist::Build\*(C'\fR, \f(CW\*(C`Data::Dumper\*(C'\fR, \f(CW\*(C`DB_File\*(C'\fR, \f(CW\*(C`Devel::PPPort\*(C'\fR, +\&\f(CW\*(C`Digest\*(C'\fR, \f(CW\*(C`Digest::MD5\*(C'\fR, \f(CW\*(C`Digest::SHA\*(C'\fR, \f(CW\*(C`Encode\*(C'\fR, \f(CW\*(C`Exporter\*(C'\fR, +\&\f(CW\*(C`ExtUtils::CBuilder\*(C'\fR, \f(CW\*(C`ExtUtils::Command\*(C'\fR, \f(CW\*(C`ExtUtils::Constant\*(C'\fR, +\&\f(CW\*(C`ExtUtils::Install\*(C'\fR, \f(CW\*(C`ExtUtils::MakeMaker\*(C'\fR, \f(CW\*(C`ExtUtils::Manifest\*(C'\fR, +\&\f(CW\*(C`ExtUtils::ParseXS\*(C'\fR, \f(CW\*(C`File::Fetch\*(C'\fR, \f(CW\*(C`File::Path\*(C'\fR, \f(CW\*(C`File::Temp\*(C'\fR, +\&\f(CW\*(C`Filter::Simple\*(C'\fR, \f(CW\*(C`Filter::Util::Call\*(C'\fR, \f(CW\*(C`Getopt::Long\*(C'\fR, \f(CW\*(C`IO\*(C'\fR, +\&\f(CW\*(C`IO::Zlib\*(C'\fR, \f(CW\*(C`IPC::Cmd\*(C'\fR, \f(CW\*(C`IPC::SysV\*(C'\fR, \f(CW\*(C`Locale::Maketext\*(C'\fR, +\&\f(CW\*(C`Locale::Maketext::Simple\*(C'\fR, \f(CW\*(C`Log::Message\*(C'\fR, \f(CW\*(C`Log::Message::Simple\*(C'\fR, +\&\f(CW\*(C`Math::BigInt\*(C'\fR, \f(CW\*(C`Math::BigInt::FastCalc\*(C'\fR, \f(CW\*(C`Math::BigRat\*(C'\fR, +\&\f(CW\*(C`Math::Complex\*(C'\fR, \f(CW\*(C`Memoize\*(C'\fR, \f(CW\*(C`MIME::Base64\*(C'\fR, \f(CW\*(C`Module::Build\*(C'\fR, +\&\f(CW\*(C`Module::CoreList\*(C'\fR, \f(CW\*(C`Module::Load\*(C'\fR, \f(CW\*(C`Module::Load::Conditional\*(C'\fR, +\&\f(CW\*(C`Module::Loaded\*(C'\fR, \f(CW\*(C`Module::Pluggable\*(C'\fR, \f(CW\*(C`Net::Ping\*(C'\fR, \f(CW\*(C`NEXT\*(C'\fR, +\&\f(CW\*(C`Object::Accessor\*(C'\fR, \f(CW\*(C`Package::Constants\*(C'\fR, \f(CW\*(C`PerlIO\*(C'\fR, \f(CW\*(C`Pod::Parser\*(C'\fR, +\&\f(CW\*(C`Pod::Perldoc\*(C'\fR, \f(CW\*(C`Pod::Plainer\*(C'\fR, \f(CW\*(C`Pod::Simple\*(C'\fR, \f(CW\*(C`Safe\*(C'\fR, \f(CW\*(C`SelfLoader\*(C'\fR, +\&\f(CW\*(C`Storable\*(C'\fR, \f(CW\*(C`Switch\*(C'\fR, \f(CW\*(C`Sys::Syslog\*(C'\fR, \f(CW\*(C`Term::ANSIColor\*(C'\fR, \f(CW\*(C`Term::UI\*(C'\fR, +\&\f(CW\*(C`Test\*(C'\fR, \f(CW\*(C`Test::Harness\*(C'\fR, \f(CW\*(C`Test::Simple\*(C'\fR, \f(CW\*(C`Text::Balanced\*(C'\fR, +\&\f(CW\*(C`Text::ParseWords\*(C'\fR, \f(CW\*(C`Text::Soundex\*(C'\fR, \f(CW\*(C`Thread::Queue\*(C'\fR, +\&\f(CW\*(C`Thread::Semaphore\*(C'\fR, \f(CW\*(C`Tie::RefHash\*(C'\fR, \f(CW\*(C`Time::HiRes\*(C'\fR, \f(CW\*(C`Time::Local\*(C'\fR, +\&\f(CW\*(C`Time::Piece\*(C'\fR, \f(CW\*(C`Unicode::Collate\*(C'\fR, \f(CW\*(C`Unicode::Normalize\*(C'\fR, \f(CW\*(C`Win32\*(C'\fR, +\&\f(CW\*(C`Win32API::File\*(C'\fR, \f(CW\*(C`XSLoader\*(C'\fR +.IP "Removed Modules and Pragmata" 4 +.IX Item "Removed Modules and Pragmata" +\&\f(CW\*(C`attrs\*(C'\fR, \f(CW\*(C`CPAN::API::HOWTO\*(C'\fR, \f(CW\*(C`CPAN::DeferedCode\*(C'\fR, \f(CW\*(C`CPANPLUS::inc\*(C'\fR, +\&\f(CW\*(C`DCLsym\*(C'\fR, \f(CW\*(C`ExtUtils::MakeMaker::bytes\*(C'\fR, \f(CW\*(C`ExtUtils::MakeMaker::vmsish\*(C'\fR, +\&\f(CW\*(C`Stdio\*(C'\fR, \f(CW\*(C`Test::Harness::Assert\*(C'\fR, \f(CW\*(C`Test::Harness::Iterator\*(C'\fR, +\&\f(CW\*(C`Test::Harness::Point\*(C'\fR, \f(CW\*(C`Test::Harness::Results\*(C'\fR, +\&\f(CW\*(C`Test::Harness::Straps\*(C'\fR, \f(CW\*(C`Test::Harness::Util\*(C'\fR, \f(CW\*(C`XSSymSet\*(C'\fR +.IP "Deprecated Modules and Pragmata" 4 +.IX Item "Deprecated Modules and Pragmata" +.RE +.RS 4 +.RE +.PD 0 +.IP Documentation 4 +.IX Item "Documentation" +.RS 4 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.RE +.RS 4 +.RE +.IP "Selected Performance Enhancements" 4 +.IX Item "Selected Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Internal Changes" 4 +.IX Item "Internal Changes" +.IP Testing 4 +.IX Item "Testing" +.RS 4 +.IP "Testing improvements" 4 +.IX Item "Testing improvements" +.PD +Parallel tests, Test harness flexibility, Test watchdog +.IP "New Tests" 4 +.IX Item "New Tests" +.RE +.RS 4 +.RE +.PD 0 +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.RS 4 +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.IP "Changed Diagnostics" 4 +.IX Item "Changed Diagnostics" +.PD +\&\f(CW\*(C`Illegal character in prototype for %s : %s\*(C'\fR, \f(CW\*(C`Prototype after \*(Aq%c\*(Aq for +%s : %s\*(C'\fR +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "Platform Specific Changes" 4 +.IX Item "Platform Specific Changes" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.PD +Haiku, MirOS BSD +.IP "Discontinued Platforms" 4 +.IX Item "Discontinued Platforms" +Domain/OS, MiNT, Tenon MachTen +.IP "Updated Platforms" 4 +.IX Item "Updated Platforms" +AIX, Cygwin, Darwin (Mac OS X), DragonFly BSD, FreeBSD, Irix, NetBSD, +OpenVMS, Stratus VOS, Symbian, Windows +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.PD 0 +.IP Errata 4 +.IX Item "Errata" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5101delta \- what is new for perl v5.10.1" +.IX Subsection "perl5101delta - what is new for perl v5.10.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Switch statement changes" 4 +.IX Item "Switch statement changes" +.PD +flip-flop operators, defined-or operator +.IP "Smart match changes" 4 +.IX Item "Smart match changes" +.PD 0 +.IP "Other incompatible changes" 4 +.IX Item "Other incompatible changes" +.RE +.RS 4 +.RE +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Unicode Character Database 5.1.0" 4 +.IX Item "Unicode Character Database 5.1.0" +.IP "A proper interface for pluggable Method Resolution Orders" 4 +.IX Item "A proper interface for pluggable Method Resolution Orders" +.ie n .IP "The ""overloading"" pragma" 4 +.el .IP "The \f(CWoverloading\fR pragma" 4 +.IX Item "The overloading pragma" +.IP "Parallel tests" 4 +.IX Item "Parallel tests" +.IP "DTrace support" 4 +.IX Item "DTrace support" +.ie n .IP "Support for ""configure_requires"" in CPAN module metadata" 4 +.el .IP "Support for \f(CWconfigure_requires\fR in CPAN module metadata" 4 +.IX Item "Support for configure_requires in CPAN module metadata" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.PD +\&\f(CW\*(C`autodie\*(C'\fR, \f(CW\*(C`Compress::Raw::Bzip2\*(C'\fR, \f(CW\*(C`parent\*(C'\fR, \f(CW\*(C`Parse::CPAN::Meta\*(C'\fR +.IP "Pragmata Changes" 4 +.IX Item "Pragmata Changes" +\&\f(CW\*(C`attributes\*(C'\fR, \f(CW\*(C`attrs\*(C'\fR, \f(CW\*(C`base\*(C'\fR, \f(CW\*(C`bigint\*(C'\fR, \f(CW\*(C`bignum\*(C'\fR, \f(CW\*(C`bigrat\*(C'\fR, +\&\f(CW\*(C`charnames\*(C'\fR, \f(CW\*(C`constant\*(C'\fR, \f(CW\*(C`feature\*(C'\fR, \f(CW\*(C`fields\*(C'\fR, \f(CW\*(C`lib\*(C'\fR, \f(CW\*(C`open\*(C'\fR, +\&\f(CW\*(C`overload\*(C'\fR, \f(CW\*(C`overloading\*(C'\fR, \f(CW\*(C`version\*(C'\fR +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +\&\f(CW\*(C`Archive::Extract\*(C'\fR, \f(CW\*(C`Archive::Tar\*(C'\fR, \f(CW\*(C`Attribute::Handlers\*(C'\fR, +\&\f(CW\*(C`AutoLoader\*(C'\fR, \f(CW\*(C`AutoSplit\*(C'\fR, \f(CW\*(C`B\*(C'\fR, \f(CW\*(C`B::Debug\*(C'\fR, \f(CW\*(C`B::Deparse\*(C'\fR, \f(CW\*(C`B::Lint\*(C'\fR, +\&\f(CW\*(C`B::Xref\*(C'\fR, \f(CW\*(C`Benchmark\*(C'\fR, \f(CW\*(C`Carp\*(C'\fR, \f(CW\*(C`CGI\*(C'\fR, \f(CW\*(C`Compress::Zlib\*(C'\fR, \f(CW\*(C`CPAN\*(C'\fR, +\&\f(CW\*(C`CPANPLUS\*(C'\fR, \f(CW\*(C`CPANPLUS::Dist::Build\*(C'\fR, \f(CW\*(C`Cwd\*(C'\fR, \f(CW\*(C`Data::Dumper\*(C'\fR, \f(CW\*(C`DB\*(C'\fR, +\&\f(CW\*(C`DB_File\*(C'\fR, \f(CW\*(C`Devel::PPPort\*(C'\fR, \f(CW\*(C`Digest::MD5\*(C'\fR, \f(CW\*(C`Digest::SHA\*(C'\fR, \f(CW\*(C`DirHandle\*(C'\fR, +\&\f(CW\*(C`Dumpvalue\*(C'\fR, \f(CW\*(C`DynaLoader\*(C'\fR, \f(CW\*(C`Encode\*(C'\fR, \f(CW\*(C`Errno\*(C'\fR, \f(CW\*(C`Exporter\*(C'\fR, +\&\f(CW\*(C`ExtUtils::CBuilder\*(C'\fR, \f(CW\*(C`ExtUtils::Command\*(C'\fR, \f(CW\*(C`ExtUtils::Constant\*(C'\fR, +\&\f(CW\*(C`ExtUtils::Embed\*(C'\fR, \f(CW\*(C`ExtUtils::Install\*(C'\fR, \f(CW\*(C`ExtUtils::MakeMaker\*(C'\fR, +\&\f(CW\*(C`ExtUtils::Manifest\*(C'\fR, \f(CW\*(C`ExtUtils::ParseXS\*(C'\fR, \f(CW\*(C`Fatal\*(C'\fR, \f(CW\*(C`File::Basename\*(C'\fR, +\&\f(CW\*(C`File::Compare\*(C'\fR, \f(CW\*(C`File::Copy\*(C'\fR, \f(CW\*(C`File::Fetch\*(C'\fR, \f(CW\*(C`File::Find\*(C'\fR, +\&\f(CW\*(C`File::Path\*(C'\fR, \f(CW\*(C`File::Spec\*(C'\fR, \f(CW\*(C`File::stat\*(C'\fR, \f(CW\*(C`File::Temp\*(C'\fR, \f(CW\*(C`FileCache\*(C'\fR, +\&\f(CW\*(C`FileHandle\*(C'\fR, \f(CW\*(C`Filter::Simple\*(C'\fR, \f(CW\*(C`Filter::Util::Call\*(C'\fR, \f(CW\*(C`FindBin\*(C'\fR, +\&\f(CW\*(C`GDBM_File\*(C'\fR, \f(CW\*(C`Getopt::Long\*(C'\fR, \f(CW\*(C`Hash::Util::FieldHash\*(C'\fR, \f(CW\*(C`I18N::Collate\*(C'\fR, +\&\f(CW\*(C`IO\*(C'\fR, \f(CW\*(C`IO::Compress::*\*(C'\fR, \f(CW\*(C`IO::Dir\*(C'\fR, \f(CW\*(C`IO::Handle\*(C'\fR, \f(CW\*(C`IO::Socket\*(C'\fR, +\&\f(CW\*(C`IO::Zlib\*(C'\fR, \f(CW\*(C`IPC::Cmd\*(C'\fR, \f(CW\*(C`IPC::Open3\*(C'\fR, \f(CW\*(C`IPC::SysV\*(C'\fR, \f(CW\*(C`lib\*(C'\fR, +\&\f(CW\*(C`List::Util\*(C'\fR, \f(CW\*(C`Locale::MakeText\*(C'\fR, \f(CW\*(C`Log::Message\*(C'\fR, \f(CW\*(C`Math::BigFloat\*(C'\fR, +\&\f(CW\*(C`Math::BigInt\*(C'\fR, \f(CW\*(C`Math::BigInt::FastCalc\*(C'\fR, \f(CW\*(C`Math::BigRat\*(C'\fR, +\&\f(CW\*(C`Math::Complex\*(C'\fR, \f(CW\*(C`Math::Trig\*(C'\fR, \f(CW\*(C`Memoize\*(C'\fR, \f(CW\*(C`Module::Build\*(C'\fR, +\&\f(CW\*(C`Module::CoreList\*(C'\fR, \f(CW\*(C`Module::Load\*(C'\fR, \f(CW\*(C`Module::Load::Conditional\*(C'\fR, +\&\f(CW\*(C`Module::Loaded\*(C'\fR, \f(CW\*(C`Module::Pluggable\*(C'\fR, \f(CW\*(C`NDBM_File\*(C'\fR, \f(CW\*(C`Net::Ping\*(C'\fR, +\&\f(CW\*(C`NEXT\*(C'\fR, \f(CW\*(C`Object::Accessor\*(C'\fR, \f(CW\*(C`OS2::REXX\*(C'\fR, \f(CW\*(C`Package::Constants\*(C'\fR, +\&\f(CW\*(C`PerlIO\*(C'\fR, \f(CW\*(C`PerlIO::via\*(C'\fR, \f(CW\*(C`Pod::Man\*(C'\fR, \f(CW\*(C`Pod::Parser\*(C'\fR, \f(CW\*(C`Pod::Simple\*(C'\fR, +\&\f(CW\*(C`Pod::Text\*(C'\fR, \f(CW\*(C`POSIX\*(C'\fR, \f(CW\*(C`Safe\*(C'\fR, \f(CW\*(C`Scalar::Util\*(C'\fR, \f(CW\*(C`SelectSaver\*(C'\fR, +\&\f(CW\*(C`SelfLoader\*(C'\fR, \f(CW\*(C`Socket\*(C'\fR, \f(CW\*(C`Storable\*(C'\fR, \f(CW\*(C`Switch\*(C'\fR, \f(CW\*(C`Symbol\*(C'\fR, +\&\f(CW\*(C`Sys::Syslog\*(C'\fR, \f(CW\*(C`Term::ANSIColor\*(C'\fR, \f(CW\*(C`Term::ReadLine\*(C'\fR, \f(CW\*(C`Term::UI\*(C'\fR, +\&\f(CW\*(C`Test::Harness\*(C'\fR, \f(CW\*(C`Test::Simple\*(C'\fR, \f(CW\*(C`Text::ParseWords\*(C'\fR, \f(CW\*(C`Text::Tabs\*(C'\fR, +\&\f(CW\*(C`Text::Wrap\*(C'\fR, \f(CW\*(C`Thread::Queue\*(C'\fR, \f(CW\*(C`Thread::Semaphore\*(C'\fR, \f(CW\*(C`threads\*(C'\fR, +\&\f(CW\*(C`threads::shared\*(C'\fR, \f(CW\*(C`Tie::RefHash\*(C'\fR, \f(CW\*(C`Tie::StdHandle\*(C'\fR, \f(CW\*(C`Time::HiRes\*(C'\fR, +\&\f(CW\*(C`Time::Local\*(C'\fR, \f(CW\*(C`Time::Piece\*(C'\fR, \f(CW\*(C`Unicode::Normalize\*(C'\fR, \f(CW\*(C`Unicode::UCD\*(C'\fR, +\&\f(CW\*(C`UNIVERSAL\*(C'\fR, \f(CW\*(C`Win32\*(C'\fR, \f(CW\*(C`Win32API::File\*(C'\fR, \f(CW\*(C`XSLoader\*(C'\fR +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +\&\fIh2ph\fR, \fIh2xs\fR, \fIperl5db.pl\fR, \fIperlthanks\fR +.IP "New Documentation" 4 +.IX Item "New Documentation" +perlhaiku, perlmroapi, perlperf, perlrepository, perlthanks +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.PD 0 +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "\fIext/\fR reorganisation" 4 +.IX Item "ext/ reorganisation" +.IP "Configuration improvements" 4 +.IX Item "Configuration improvements" +.IP "Compilation improvements" 4 +.IX Item "Compilation improvements" +.IP "Platform Specific Changes" 4 +.IX Item "Platform Specific Changes" +.PD +AIX, Cygwin, FreeBSD, Irix, Haiku, MirOS BSD, NetBSD, Stratus VOS, Symbian, +Win32, VMS +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.PD +\&\f(CW\*(C`panic: sv_chop %s\*(C'\fR, \f(CW\*(C`Can\*(Aqt locate package %s for the parents of %s\*(C'\fR, +\&\f(CW\*(C`v\-string in use/require is non\-portable\*(C'\fR, \f(CWDeep recursion on subroutine +"%s"\fR +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +\&\f(CW\*(C`SVf_UTF8\*(C'\fR, \f(CW\*(C`SVs_TEMP\*(C'\fR +.IP "New Tests" 4 +.IX Item "New Tests" +t/comp/retainedlines.t, t/io/perlio_fail.t, t/io/perlio_leaks.t, +t/io/perlio_open.t, t/io/perlio.t, t/io/pvbm.t, t/mro/package_aliases.t, +t/op/dbm.t, t/op/index_thr.t, t/op/pat_thr.t, t/op/qr_gc.t, +t/op/reg_email_thr.t, t/op/regexp_qr_embed_thr.t, +t/op/regexp_unicode_prop.t, t/op/regexp_unicode_prop_thr.t, +t/op/reg_nc_tie.t, t/op/reg_posixcc.t, t/op/re.t, t/op/setpgrpstack.t, +t/op/substr_thr.t, t/op/upgrade.t, t/uni/lex_utf8.t, t/uni/tie.t +.IP "Known Problems" 4 +.IX Item "Known Problems" +.PD 0 +.IP Deprecations 4 +.IX Item "Deprecations" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl5100delta \- what is new for perl 5.10.0" +.IX Subsection "perl5100delta - what is new for perl 5.10.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.ie n .IP "The ""feature"" pragma" 4 +.el .IP "The \f(CWfeature\fR pragma" 4 +.IX Item "The feature pragma" +.IP "New \fB\-E\fR command-line switch" 4 +.IX Item "New -E command-line switch" +.IP "Defined-or operator" 4 +.IX Item "Defined-or operator" +.IP "Switch and Smart Match operator" 4 +.IX Item "Switch and Smart Match operator" +.IP "Regular expressions" 4 +.IX Item "Regular expressions" +.PD +Recursive Patterns, Named Capture Buffers, Possessive Quantifiers, +Backtracking control verbs, Relative backreferences, \f(CW\*(C`\eK\*(C'\fR escape, Vertical +and horizontal whitespace, and linebreak, Optional pre-match and post-match +captures with the /p flag +.ie n .IP say() 4 +.el .IP \f(CWsay()\fR 4 +.IX Item "say()" +.PD 0 +.ie n .IP "Lexical $_" 4 +.el .IP "Lexical \f(CW$_\fR" 4 +.IX Item "Lexical $_" +.ie n .IP "The ""_"" prototype" 4 +.el .IP "The \f(CW_\fR prototype" 4 +.IX Item "The _ prototype" +.IP "UNITCHECK blocks" 4 +.IX Item "UNITCHECK blocks" +.ie n .IP "New Pragma, ""mro""" 4 +.el .IP "New Pragma, \f(CWmro\fR" 4 +.IX Item "New Pragma, mro" +.IP "\fBreaddir()\fR may return a ""short filename"" on Windows" 4 +.IX Item "readdir() may return a ""short filename"" on Windows" +.IP "\fBreadpipe()\fR is now overridable" 4 +.IX Item "readpipe() is now overridable" +.IP "Default argument for \fBreadline()\fR" 4 +.IX Item "Default argument for readline()" +.IP "\fBstate()\fR variables" 4 +.IX Item "state() variables" +.IP "Stacked filetest operators" 4 +.IX Item "Stacked filetest operators" +.IP \fBUNIVERSAL::DOES()\fR 4 +.IX Item "UNIVERSAL::DOES()" +.IP Formats 4 +.IX Item "Formats" +.IP "Byte-order modifiers for \fBpack()\fR and \fBunpack()\fR" 4 +.IX Item "Byte-order modifiers for pack() and unpack()" +.ie n .IP """no VERSION""" 4 +.el .IP "\f(CWno VERSION\fR" 4 +.IX Item "no VERSION" +.ie n .IP """chdir"", ""chmod"" and ""chown"" on filehandles" 4 +.el .IP "\f(CWchdir\fR, \f(CWchmod\fR and \f(CWchown\fR on filehandles" 4 +.IX Item "chdir, chmod and chown on filehandles" +.IP "OS groups" 4 +.IX Item "OS groups" +.IP "Recursive sort subs" 4 +.IX Item "Recursive sort subs" +.IP "Exceptions in constant folding" 4 +.IX Item "Exceptions in constant folding" +.ie n .IP "Source filters in @INC" 4 +.el .IP "Source filters in \f(CW@INC\fR" 4 +.IX Item "Source filters in @INC" +.IP "New internal variables" 4 +.IX Item "New internal variables" +.PD +\&\f(CW\*(C`${^RE_DEBUG_FLAGS}\*(C'\fR, \f(CW\*(C`${^CHILD_ERROR_NATIVE}\*(C'\fR, \f(CW\*(C`${^RE_TRIE_MAXBUF}\*(C'\fR, +\&\f(CW\*(C`${^WIN32_SLOPPY_STAT}\*(C'\fR +.IP Miscellaneous 4 +.IX Item "Miscellaneous" +.PD 0 +.IP "UCD 5.0.0" 4 +.IX Item "UCD 5.0.0" +.IP MAD 4 +.IX Item "MAD" +.IP "\fBkill()\fR on Windows" 4 +.IX Item "kill() on Windows" +.RE +.RS 4 +.RE +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Packing and UTF\-8 strings" 4 +.IX Item "Packing and UTF-8 strings" +.IP "Byte/character count feature in \fBunpack()\fR" 4 +.IX Item "Byte/character count feature in unpack()" +.ie n .IP "The $* and $# variables have been removed" 4 +.el .IP "The \f(CW$*\fR and \f(CW$#\fR variables have been removed" 4 +.IX Item "The $* and $# variables have been removed" +.IP "\fBsubstr()\fR lvalues are no longer fixed-length" 4 +.IX Item "substr() lvalues are no longer fixed-length" +.ie n .IP "Parsing of ""\-f _""" 4 +.el .IP "Parsing of \f(CW\-f _\fR" 4 +.IX Item "Parsing of -f _" +.ie n .IP """:unique""" 4 +.el .IP \f(CW:unique\fR 4 +.IX Item ":unique" +.IP "Effect of pragmas in eval" 4 +.IX Item "Effect of pragmas in eval" +.IP "chdir FOO" 4 +.IX Item "chdir FOO" +.IP "Handling of .pmc files" 4 +.IX Item "Handling of .pmc files" +.ie n .IP "$^V is now a ""version"" object instead of a v\-string" 4 +.el .IP "$^V is now a \f(CWversion\fR object instead of a v\-string" 4 +.IX Item "$^V is now a version object instead of a v-string" +.IP "@\- and @+ in patterns" 4 +.IX Item "@- and @+ in patterns" +.ie n .IP "$AUTOLOAD can now be tainted" 4 +.el .IP "\f(CW$AUTOLOAD\fR can now be tainted" 4 +.IX Item "$AUTOLOAD can now be tainted" +.IP "Tainting and printf" 4 +.IX Item "Tainting and printf" +.IP "undef and signal handlers" 4 +.IX Item "undef and signal handlers" +.IP "strictures and dereferencing in \fBdefined()\fR" 4 +.IX Item "strictures and dereferencing in defined()" +.ie n .IP """(?p{})"" has been removed" 4 +.el .IP "\f(CW(?p{})\fR has been removed" 4 +.IX Item "(?p{}) has been removed" +.IP "Pseudo-hashes have been removed" 4 +.IX Item "Pseudo-hashes have been removed" +.IP "Removal of the bytecode compiler and of perlcc" 4 +.IX Item "Removal of the bytecode compiler and of perlcc" +.IP "Removal of the JPL" 4 +.IX Item "Removal of the JPL" +.IP "Recursive inheritance detected earlier" 4 +.IX Item "Recursive inheritance detected earlier" +.IP "warnings::enabled and warnings::warnif changed to favor users of modules" 4 +.IX Item "warnings::enabled and warnings::warnif changed to favor users of modules" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Upgrading individual core modules" 4 +.IX Item "Upgrading individual core modules" +.IP "Pragmata Changes" 4 +.IX Item "Pragmata Changes" +.PD +\&\f(CW\*(C`feature\*(C'\fR, \f(CW\*(C`mro\*(C'\fR, Scoping of the \f(CW\*(C`sort\*(C'\fR pragma, Scoping of \f(CW\*(C`bignum\*(C'\fR, +\&\f(CW\*(C`bigint\*(C'\fR, \f(CW\*(C`bigrat\*(C'\fR, \f(CW\*(C`base\*(C'\fR, \f(CW\*(C`strict\*(C'\fR and \f(CW\*(C`warnings\*(C'\fR, \f(CW\*(C`version\*(C'\fR, +\&\f(CW\*(C`warnings\*(C'\fR, \f(CW\*(C`less\*(C'\fR +.IP "New modules" 4 +.IX Item "New modules" +.PD 0 +.IP "Selected Changes to Core Modules" 4 +.IX Item "Selected Changes to Core Modules" +.PD +\&\f(CW\*(C`Attribute::Handlers\*(C'\fR, \f(CW\*(C`B::Lint\*(C'\fR, \f(CW\*(C`B\*(C'\fR, \f(CW\*(C`Thread\*(C'\fR +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +perl \-d, ptar, ptardiff, shasum, corelist, h2ph and h2xs, perlivp, +find2perl, config_data, cpanp, cpan2dist, pod2html +.IP "New Documentation" 4 +.IX Item "New Documentation" +.PD 0 +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.RS 4 +.IP "In-place sorting" 4 +.IX Item "In-place sorting" +.IP "Lexical array access" 4 +.IX Item "Lexical array access" +.IP "XS-assisted SWASHGET" 4 +.IX Item "XS-assisted SWASHGET" +.IP "Constant subroutines" 4 +.IX Item "Constant subroutines" +.ie n .IP """PERL_DONT_CREATE_GVSV""" 4 +.el .IP \f(CWPERL_DONT_CREATE_GVSV\fR 4 +.IX Item "PERL_DONT_CREATE_GVSV" +.IP "Weak references are cheaper" 4 +.IX Item "Weak references are cheaper" +.IP "\fBsort()\fR enhancements" 4 +.IX Item "sort() enhancements" +.IP "Memory optimisations" 4 +.IX Item "Memory optimisations" +.IP "UTF\-8 cache optimisation" 4 +.IX Item "UTF-8 cache optimisation" +.IP "Sloppy stat on Windows" 4 +.IX Item "Sloppy stat on Windows" +.IP "Regular expressions optimisations" 4 +.IX Item "Regular expressions optimisations" +.PD +Engine de-recursivised, Single char char-classes treated as literals, Trie +optimisation of literal string alternations, Aho-Corasick start-point +optimisation +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.PD 0 +.IP "Configuration improvements" 4 +.IX Item "Configuration improvements" +.PD +\&\f(CW\*(C`\-Dusesitecustomize\*(C'\fR, Relocatable installations, \fBstrlcat()\fR and \fBstrlcpy()\fR, +\&\f(CW\*(C`d_pseudofork\*(C'\fR and \f(CW\*(C`d_printf_format_null\*(C'\fR, Configure help +.IP "Compilation improvements" 4 +.IX Item "Compilation improvements" +Parallel build, Borland's compilers support, Static build on Windows, +ppport.h files, C++ compatibility, Support for Microsoft 64\-bit compiler, +Visual C++, Win32 builds +.IP "Installation improvements" 4 +.IX Item "Installation improvements" +Module auxiliary files +.IP "New Or Improved Platforms" 4 +.IX Item "New Or Improved Platforms" +.RE +.RS 4 +.RE +.PD 0 +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD +strictures in regexp-eval blocks, Calling \fBCORE::require()\fR, Subscripts of +slices, \f(CW\*(C`no warnings \*(Aqcategory\*(Aq\*(C'\fR works correctly with \-w, threads +improvements, \fBchr()\fR and negative values, PERL5SHELL and tainting, Using +*FILE{IO}, Overloading and reblessing, Overloading and UTF\-8, eval memory +leaks fixed, Random device on Windows, PERLIO_DEBUG, PerlIO::scalar and +read-only scalars, \fBstudy()\fR and UTF\-8, Critical signals, \f(CW@INC\fR\-hook fix, +\&\f(CW\*(C`\-t\*(C'\fR switch fix, Duping UTF\-8 filehandles, Localisation of hash elements +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +Use of uninitialized value, Deprecated use of \fBmy()\fR in false conditional, +!=~ should be !~, Newline in left-justified string, Too late for "\-T" +option, "%s" variable \f(CW%s\fR masks earlier declaration, +\&\fBreaddir()\fR/\fBclosedir()\fR/etc. attempted on invalid dirhandle, Opening +dirhandle/filehandle \f(CW%s\fR also as a file/directory, Use of \-P is deprecated, +v\-string in use/require is non-portable, perl \-V +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.RS 4 +.PD 0 +.IP "Reordering of SVt_* constants" 4 +.IX Item "Reordering of SVt_* constants" +.IP "Elimination of SVt_PVBM" 4 +.IX Item "Elimination of SVt_PVBM" +.IP "New type SVt_BIND" 4 +.IX Item "New type SVt_BIND" +.IP "Removal of CPP symbols" 4 +.IX Item "Removal of CPP symbols" +.IP "Less space is used by ops" 4 +.IX Item "Less space is used by ops" +.IP "New parser" 4 +.IX Item "New parser" +.ie n .IP "Use of ""const""" 4 +.el .IP "Use of \f(CWconst\fR" 4 +.IX Item "Use of const" +.IP Mathoms 4 +.IX Item "Mathoms" +.ie n .IP """AvFLAGS"" has been removed" 4 +.el .IP "\f(CWAvFLAGS\fR has been removed" 4 +.IX Item "AvFLAGS has been removed" +.ie n .IP """av_*"" changes" 4 +.el .IP "\f(CWav_*\fR changes" 4 +.IX Item "av_* changes" +.IP "$^H and %^H" 4 +.IX Item "$^H and %^H" +.IP "B:: modules inheritance changed" 4 +.IX Item "B:: modules inheritance changed" +.IP "Anonymous hash and array constructors" 4 +.IX Item "Anonymous hash and array constructors" +.RE +.RS 4 +.RE +.IP "Known Problems" 4 +.IX Item "Known Problems" +.RS 4 +.IP "UTF\-8 problems" 4 +.IX Item "UTF-8 problems" +.RE +.RS 4 +.RE +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl589delta \- what is new for perl v5.8.9" +.IX Subsection "perl589delta - what is new for perl v5.8.9" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Notice 4 +.IX Item "Notice" +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Unicode Character Database 5.1.0." 4 +.IX Item "Unicode Character Database 5.1.0." +.IP "stat and \-X on directory handles" 4 +.IX Item "stat and -X on directory handles" +.ie n .IP "Source filters in @INC" 4 +.el .IP "Source filters in \f(CW@INC\fR" 4 +.IX Item "Source filters in @INC" +.IP "Exceptions in constant folding" 4 +.IX Item "Exceptions in constant folding" +.ie n .IP """no VERSION""" 4 +.el .IP "\f(CWno VERSION\fR" 4 +.IX Item "no VERSION" +.IP "Improved internal UTF\-8 caching code" 4 +.IX Item "Improved internal UTF-8 caching code" +.IP "Runtime relocatable installations" 4 +.IX Item "Runtime relocatable installations" +.IP "New internal variables" 4 +.IX Item "New internal variables" +.PD +\&\f(CW\*(C`${^CHILD_ERROR_NATIVE}\*(C'\fR, \f(CW\*(C`${^UTF8CACHE}\*(C'\fR +.ie n .IP """readpipe"" is now overridable" 4 +.el .IP "\f(CWreadpipe\fR is now overridable" 4 +.IX Item "readpipe is now overridable" +.PD 0 +.IP "simple exception handling macros" 4 +.IX Item "simple exception handling macros" +.IP "\-D option enhancements" 4 +.IX Item "-D option enhancements" +.IP "XS-assisted SWASHGET" 4 +.IX Item "XS-assisted SWASHGET" +.IP "Constant subroutines" 4 +.IX Item "Constant subroutines" +.RE +.RS 4 +.RE +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules" 4 +.IX Item "New Modules" +.IP "Updated Modules" 4 +.IX Item "Updated Modules" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "debugger upgraded to version 1.31" 4 +.IX Item "debugger upgraded to version 1.31" +.IP \fIperlthanks\fR 4 +.IX Item "perlthanks" +.IP \fIperlbug\fR 4 +.IX Item "perlbug" +.IP \fIh2xs\fR 4 +.IX Item "h2xs" +.IP \fIh2ph\fR 4 +.IX Item "h2ph" +.RE +.RS 4 +.RE +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Changes to Existing Documentation" 4 +.IX Item "Changes to Existing Documentation" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Relocatable installations" 4 +.IX Item "Relocatable installations" +.IP "Configuration improvements" 4 +.IX Item "Configuration improvements" +.IP "Compilation improvements" 4 +.IX Item "Compilation improvements" +.IP "Installation improvements." 4 +.IX Item "Installation improvements." +.IP "Platform Specific Changes" 4 +.IX Item "Platform Specific Changes" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP Unicode 4 +.IX Item "Unicode" +.IP PerlIO 4 +.IX Item "PerlIO" +.IP Magic 4 +.IX Item "Magic" +.IP "Reblessing overloaded objects now works" 4 +.IX Item "Reblessing overloaded objects now works" +.ie n .IP """strict"" now propagates correctly into string evals" 4 +.el .IP "\f(CWstrict\fR now propagates correctly into string evals" 4 +.IX Item "strict now propagates correctly into string evals" +.IP "Other fixes" 4 +.IX Item "Other fixes" +.IP "Platform Specific Fixes" 4 +.IX Item "Platform Specific Fixes" +.IP "Smaller fixes" 4 +.IX Item "Smaller fixes" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.RS 4 +.ie n .IP "panic: sv_chop %s" 4 +.el .IP "panic: sv_chop \f(CW%s\fR" 4 +.IX Item "panic: sv_chop %s" +.IP "Maximal count of pending signals (%s) exceeded" 4 +.IX Item "Maximal count of pending signals (%s) exceeded" +.ie n .IP "panic: attempt to call %s in %s" 4 +.el .IP "panic: attempt to call \f(CW%s\fR in \f(CW%s\fR" 4 +.IX Item "panic: attempt to call %s in %s" +.IP "FETCHSIZE returned a negative value" 4 +.IX Item "FETCHSIZE returned a negative value" +.ie n .IP "Can't upgrade %s (%d) to %d" 4 +.el .IP "Can't upgrade \f(CW%s\fR (%d) to \f(CW%d\fR" 4 +.IX Item "Can't upgrade %s (%d) to %d" +.ie n .IP "%s argument is not a HASH or ARRAY element or a subroutine" 4 +.el .IP "\f(CW%s\fR argument is not a HASH or ARRAY element or a subroutine" 4 +.IX Item "%s argument is not a HASH or ARRAY element or a subroutine" +.ie n .IP "Cannot make the non-overridable builtin %s fatal" 4 +.el .IP "Cannot make the non-overridable builtin \f(CW%s\fR fatal" 4 +.IX Item "Cannot make the non-overridable builtin %s fatal" +.ie n .IP "Unrecognized character '%s' in column %d" 4 +.el .IP "Unrecognized character '%s' in column \f(CW%d\fR" 4 +.IX Item "Unrecognized character '%s' in column %d" +.IP "Offset outside string" 4 +.IX Item "Offset outside string" +.IP "Invalid escape in the specified encoding in regexp; marked by <\-\- HERE in m/%s/" 4 +.IX Item "Invalid escape in the specified encoding in regexp; marked by <-- HERE in m/%s/" +.IP "Your machine doesn't support dump/undump." 4 +.IX Item "Your machine doesn't support dump/undump." +.RE +.RS 4 +.RE +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.RS 4 +.IP "Macro cleanups" 4 +.IX Item "Macro cleanups" +.RE +.RS 4 +.RE +.IP "New Tests" 4 +.IX Item "New Tests" +.PD +ext/DynaLoader/t/DynaLoader.t, t/comp/fold.t, t/io/pvbm.t, +t/lib/proxy_constant_subs.t, t/op/attrhand.t, t/op/dbm.t, +t/op/inccode\-tie.t, t/op/incfilter.t, t/op/kill0.t, t/op/qrstack.t, +t/op/qr.t, t/op/regexp_qr_embed.t, t/op/regexp_qr.t, t/op/rxcode.t, +t/op/studytied.t, t/op/substT.t, t/op/symbolcache.t, t/op/upgrade.t, +t/mro/package_aliases.t, t/pod/twice.t, t/run/cloexec.t, t/uni/cache.t, +t/uni/chr.t, t/uni/greek.t, t/uni/latin2.t, t/uni/overload.t, t/uni/tie.t +.IP "Known Problems" 4 +.IX Item "Known Problems" +.PD 0 +.IP "Platform Specific Notes" 4 +.IX Item "Platform Specific Notes" +.RS 4 +.IP Win32 4 +.IX Item "Win32" +.IP OS/2 4 +.IX Item "OS/2" +.IP VMS 4 +.IX Item "VMS" +.RE +.RS 4 +.RE +.IP Obituary 4 +.IX Item "Obituary" +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl588delta \- what is new for perl v5.8.8" +.IX Subsection "perl588delta - what is new for perl v5.8.8" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.ie n .IP """h2xs"" enhancements" 4 +.el .IP "\f(CWh2xs\fR enhancements" 4 +.IX Item "h2xs enhancements" +.ie n .IP """perlivp"" enhancements" 4 +.el .IP "\f(CWperlivp\fR enhancements" 4 +.IX Item "perlivp enhancements" +.RE +.RS 4 +.RE +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP "no warnings 'category' works correctly with \-w" 4 +.IX Item "no warnings 'category' works correctly with -w" +.IP "Remove over-optimisation" 4 +.IX Item "Remove over-optimisation" +.IP "\fBsprintf()\fR fixes" 4 +.IX Item "sprintf() fixes" +.IP "Debugger and Unicode slowdown" 4 +.IX Item "Debugger and Unicode slowdown" +.IP "Smaller fixes" 4 +.IX Item "Smaller fixes" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.RS 4 +.IP "Attempt to set length of freed array" 4 +.IX Item "Attempt to set length of freed array" +.IP "Non-string passed as bitmask" 4 +.IX Item "Non-string passed as bitmask" +.IP "Search pattern not terminated or ternary operator parsed as search pattern" 4 +.IX Item "Search pattern not terminated or ternary operator parsed as search pattern" +.RE +.RS 4 +.RE +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl587delta \- what is new for perl v5.8.7" +.IX Subsection "perl587delta - what is new for perl v5.8.7" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Unicode Character Database 4.1.0" 4 +.IX Item "Unicode Character Database 4.1.0" +.IP "suidperl less insecure" 4 +.IX Item "suidperl less insecure" +.IP "Optional site customization script" 4 +.IX Item "Optional site customization script" +.ie n .IP """Config.pm"" is now much smaller." 4 +.el .IP "\f(CWConfig.pm\fR is now much smaller." 4 +.IX Item "Config.pm is now much smaller." +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "find2perl enhancements" 4 +.IX Item "find2perl enhancements" +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl586delta \- what is new for perl v5.8.6" +.IX Subsection "perl586delta - what is new for perl v5.8.6" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "New Tests" 4 +.IX Item "New Tests" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl585delta \- what is new for perl v5.8.5" +.IX Subsection "perl585delta - what is new for perl v5.8.5" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP "Perl's debugger" 4 +.IX Item "Perl's debugger" +.IP h2ph 4 +.IX Item "h2ph" +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl584delta \- what is new for perl v5.8.4" +.IX Subsection "perl584delta - what is new for perl v5.8.4" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Malloc wrapping" 4 +.IX Item "Malloc wrapping" +.IP "Unicode Character Database 4.0.1" 4 +.IX Item "Unicode Character Database 4.0.1" +.IP "suidperl less insecure" 4 +.IX Item "suidperl less insecure" +.IP format 4 +.IX Item "format" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated modules" 4 +.IX Item "Updated modules" +.PD +Attribute::Handlers, B, Benchmark, CGI, Carp, Cwd, Exporter, File::Find, +IO, IPC::Open3, Local::Maketext, Math::BigFloat, Math::BigInt, +Math::BigRat, MIME::Base64, ODBM_File, POSIX, Shell, Socket, Storable, +Switch, Sys::Syslog, Term::ANSIColor, Time::HiRes, Unicode::UCD, Win32, +base, open, threads, utf8 +.RE +.RS 4 +.RE +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.PD 0 +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Future Directions" 4 +.IX Item "Future Directions" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl583delta \- what is new for perl v5.8.3" +.IX Subsection "perl583delta - what is new for perl v5.8.3" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.PD +CGI, Cwd, Digest, Digest::MD5, Encode, File::Spec, FindBin, List::Util, +Math::BigInt, PodParser, Pod::Perldoc, POSIX, Unicode::Collate, +Unicode::Normalize, Test::Harness, threads::shared +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.PD 0 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Configuration and Building" 4 +.IX Item "Configuration and Building" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Future Directions" 4 +.IX Item "Future Directions" +.IP Obituary 4 +.IX Item "Obituary" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl582delta \- what is new for perl v5.8.2" +.IX Subsection "perl582delta - what is new for perl v5.8.2" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Hash Randomisation" 4 +.IX Item "Hash Randomisation" +.IP Threading 4 +.IX Item "Threading" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules And Pragmata" 4 +.IX Item "Updated Modules And Pragmata" +.PD +Devel::PPPort, Digest::MD5, I18N::LangTags, libnet, MIME::Base64, +Pod::Perldoc, strict, Tie::Hash, Time::HiRes, Unicode::Collate, +Unicode::Normalize, UNIVERSAL +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.PD 0 +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.IP "Future Directions" 4 +.IX Item "Future Directions" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl581delta \- what is new for perl v5.8.1" +.IX Subsection "perl581delta - what is new for perl v5.8.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Hash Randomisation" 4 +.IX Item "Hash Randomisation" +.IP "UTF\-8 On Filehandles No Longer Activated By Locale" 4 +.IX Item "UTF-8 On Filehandles No Longer Activated By Locale" +.IP "Single-number v\-strings are no longer v\-strings before ""=>""" 4 +.IX Item "Single-number v-strings are no longer v-strings before ""=>""" +.IP "(Win32) The \-C Switch Has Been Repurposed" 4 +.IX Item "(Win32) The -C Switch Has Been Repurposed" +.IP "(Win32) The /d Switch Of cmd.exe" 4 +.IX Item "(Win32) The /d Switch Of cmd.exe" +.RE +.RS 4 +.RE +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "UTF\-8 no longer default under UTF\-8 locales" 4 +.IX Item "UTF-8 no longer default under UTF-8 locales" +.IP "Unsafe signals again available" 4 +.IX Item "Unsafe signals again available" +.IP "Tied Arrays with Negative Array Indices" 4 +.IX Item "Tied Arrays with Negative Array Indices" +.IP "local ${$x}" 4 +.IX Item "local ${$x}" +.IP "Unicode Character Database 4.0.0" 4 +.IX Item "Unicode Character Database 4.0.0" +.IP "Deprecation Warnings" 4 +.IX Item "Deprecation Warnings" +.IP "Miscellaneous Enhancements" 4 +.IX Item "Miscellaneous Enhancements" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "Updated Modules And Pragmata" 4 +.IX Item "Updated Modules And Pragmata" +.PD +base, B::Bytecode, B::Concise, B::Deparse, Benchmark, ByteLoader, bytes, +CGI, charnames, CPAN, Data::Dumper, DB_File, Devel::PPPort, Digest::MD5, +Encode, fields, libnet, Math::BigInt, MIME::Base64, NEXT, Net::Ping, +PerlIO::scalar, podlators, Pod::LaTeX, PodParsers, Pod::Perldoc, +Scalar::Util, Storable, strict, Term::ANSIcolor, Test::Harness, Test::More, +Test::Simple, Text::Balanced, Time::HiRes, threads, threads::shared, +Unicode::Collate, Unicode::Normalize, Win32::GetFolderPath, +Win32::GetOSVersion +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.PD 0 +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Platform-specific enhancements" 4 +.IX Item "Platform-specific enhancements" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP "Closures, eval and lexicals" 4 +.IX Item "Closures, eval and lexicals" +.IP "Generic fixes" 4 +.IX Item "Generic fixes" +.IP "Platform-specific fixes" 4 +.IX Item "Platform-specific fixes" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.RS 4 +.ie n .IP "Changed ""A thread exited while %d threads were running""" 4 +.el .IP "Changed ""A thread exited while \f(CW%d\fR threads were running""" 4 +.IX Item "Changed ""A thread exited while %d threads were running""" +.IP "Removed ""Attempt to clear a restricted hash""" 4 +.IX Item "Removed ""Attempt to clear a restricted hash""" +.IP "New ""Illegal declaration of anonymous subroutine""" 4 +.IX Item "New ""Illegal declaration of anonymous subroutine""" +.IP "Changed ""Invalid range ""%s"" in transliteration operator""" 4 +.IX Item "Changed ""Invalid range ""%s"" in transliteration operator""" +.IP "New ""Missing control char name in \ec""" 4 +.IX Item "New ""Missing control char name in c""" +.ie n .IP "New ""Newline in left-justified string for %s""" 4 +.el .IP "New ""Newline in left-justified string for \f(CW%s\fR""" 4 +.IX Item "New ""Newline in left-justified string for %s""" +.ie n .IP "New ""Possible precedence problem on bitwise %c operator""" 4 +.el .IP "New ""Possible precedence problem on bitwise \f(CW%c\fR operator""" 4 +.IX Item "New ""Possible precedence problem on bitwise %c operator""" +.IP "New ""Pseudo-hashes are deprecated""" 4 +.IX Item "New ""Pseudo-hashes are deprecated""" +.ie n .IP "New ""\fBread()\fR on %s filehandle %s""" 4 +.el .IP "New ""\fBread()\fR on \f(CW%s\fR filehandle \f(CW%s\fR""" 4 +.IX Item "New ""read() on %s filehandle %s""" +.IP "New ""5.005 threads are deprecated""" 4 +.IX Item "New ""5.005 threads are deprecated""" +.IP "New ""Tied variable freed while still in use""" 4 +.IX Item "New ""Tied variable freed while still in use""" +.IP "New ""To%s: illegal mapping '%s'""" 4 +.IX Item "New ""To%s: illegal mapping '%s'""" +.IP "New ""Use of freed value in iteration""" 4 +.IX Item "New ""Use of freed value in iteration""" +.RE +.RS 4 +.RE +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "New Tests" 4 +.IX Item "New Tests" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.RS 4 +.IP "Tied hashes in scalar context" 4 +.IX Item "Tied hashes in scalar context" +.IP "Net::Ping 450_service and 510_ping_udp failures" 4 +.IX Item "Net::Ping 450_service and 510_ping_udp failures" +.IP B::C 4 +.IX Item "B::C" +.RE +.RS 4 +.RE +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.RS 4 +.IP "EBCDIC Platforms" 4 +.IX Item "EBCDIC Platforms" +.IP "Cygwin 1.5 problems" 4 +.IX Item "Cygwin 1.5 problems" +.IP "HP-UX: HP cc warnings about sendfile and sendpath" 4 +.IX Item "HP-UX: HP cc warnings about sendfile and sendpath" +.IP "IRIX: t/uni/tr_7jis.t falsely failing" 4 +.IX Item "IRIX: t/uni/tr_7jis.t falsely failing" +.IP "Mac OS X: no usemymalloc" 4 +.IX Item "Mac OS X: no usemymalloc" +.IP "Tru64: No threaded builds with GNU cc (gcc)" 4 +.IX Item "Tru64: No threaded builds with GNU cc (gcc)" +.IP "Win32: sysopen, sysread, syswrite" 4 +.IX Item "Win32: sysopen, sysread, syswrite" +.RE +.RS 4 +.RE +.IP "Future Directions" 4 +.IX Item "Future Directions" +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perl58delta \- what is new for perl v5.8.0" +.IX Subsection "perl58delta - what is new for perl v5.8.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Highlights In 5.8.0" 4 +.IX Item "Highlights In 5.8.0" +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Binary Incompatibility" 4 +.IX Item "Binary Incompatibility" +.IP "64\-bit platforms and malloc" 4 +.IX Item "64-bit platforms and malloc" +.IP "AIX Dynaloading" 4 +.IX Item "AIX Dynaloading" +.ie n .IP "Attributes for ""my"" variables now handled at run-time" 4 +.el .IP "Attributes for \f(CWmy\fR variables now handled at run-time" 4 +.IX Item "Attributes for my variables now handled at run-time" +.IP "Socket Extension Dynamic in VMS" 4 +.IX Item "Socket Extension Dynamic in VMS" +.IP "IEEE-format Floating Point Default on OpenVMS Alpha" 4 +.IX Item "IEEE-format Floating Point Default on OpenVMS Alpha" +.ie n .IP "New Unicode Semantics (no more ""use utf8"", almost)" 4 +.el .IP "New Unicode Semantics (no more \f(CWuse utf8\fR, almost)" 4 +.IX Item "New Unicode Semantics (no more use utf8, almost)" +.IP "New Unicode Properties" 4 +.IX Item "New Unicode Properties" +.IP "REF(...) Instead Of SCALAR(...)" 4 +.IX Item "REF(...) Instead Of SCALAR(...)" +.IP "pack/unpack D/F recycled" 4 +.IX Item "pack/unpack D/F recycled" +.IP "\fBglob()\fR now returns filenames in alphabetical order" 4 +.IX Item "glob() now returns filenames in alphabetical order" +.IP Deprecations 4 +.IX Item "Deprecations" +.RE +.RS 4 +.RE +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Unicode Overhaul" 4 +.IX Item "Unicode Overhaul" +.IP "PerlIO is Now The Default" 4 +.IX Item "PerlIO is Now The Default" +.IP ithreads 4 +.IX Item "ithreads" +.IP "Restricted Hashes" 4 +.IX Item "Restricted Hashes" +.IP "Safe Signals" 4 +.IX Item "Safe Signals" +.IP "Understanding of Numbers" 4 +.IX Item "Understanding of Numbers" +.IP "Arrays now always interpolate into double-quoted strings [561]" 4 +.IX Item "Arrays now always interpolate into double-quoted strings [561]" +.IP "Miscellaneous Changes" 4 +.IX Item "Miscellaneous Changes" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules and Pragmata" 4 +.IX Item "New Modules and Pragmata" +.IP "Updated And Improved Modules and Pragmata" 4 +.IX Item "Updated And Improved Modules and Pragmata" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.IP "New Documentation" 4 +.IX Item "New Documentation" +.IP "Performance Enhancements" 4 +.IX Item "Performance Enhancements" +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "Generic Improvements" 4 +.IX Item "Generic Improvements" +.IP "New Or Improved Platforms" 4 +.IX Item "New Or Improved Platforms" +.RE +.RS 4 +.RE +.IP "Selected Bug Fixes" 4 +.IX Item "Selected Bug Fixes" +.RS 4 +.IP "Platform Specific Changes and Fixes" 4 +.IX Item "Platform Specific Changes and Fixes" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.IP "Changed Internals" 4 +.IX Item "Changed Internals" +.IP "Security Vulnerability Closed [561]" 4 +.IX Item "Security Vulnerability Closed [561]" +.IP "New Tests" 4 +.IX Item "New Tests" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.RS 4 +.IP "The Compiler Suite Is Still Very Experimental" 4 +.IX Item "The Compiler Suite Is Still Very Experimental" +.IP "Localising Tied Arrays and Hashes Is Broken" 4 +.IX Item "Localising Tied Arrays and Hashes Is Broken" +.IP "Building Extensions Can Fail Because Of Largefiles" 4 +.IX Item "Building Extensions Can Fail Because Of Largefiles" +.ie n .IP "Modifying $_ Inside for(..)" 4 +.el .IP "Modifying \f(CW$_\fR Inside for(..)" 4 +.IX Item "Modifying $_ Inside for(..)" +.IP "mod_perl 1.26 Doesn't Build With Threaded Perl" 4 +.IX Item "mod_perl 1.26 Doesn't Build With Threaded Perl" +.IP "lib/ftmp\-security tests warn 'system possibly insecure'" 4 +.IX Item "lib/ftmp-security tests warn 'system possibly insecure'" +.IP "libwww-perl (LWP) fails base/date #51" 4 +.IX Item "libwww-perl (LWP) fails base/date #51" +.IP "PDL failing some tests" 4 +.IX Item "PDL failing some tests" +.IP Perl_get_sv 4 +.IX Item "Perl_get_sv" +.IP "Self-tying Problems" 4 +.IX Item "Self-tying Problems" +.IP ext/threads/t/libc 4 +.IX Item "ext/threads/t/libc" +.IP "Failure of Thread (5.005\-style) tests" 4 +.IX Item "Failure of Thread (5.005-style) tests" +.IP "Timing problems" 4 +.IX Item "Timing problems" +.IP "Tied/Magical Array/Hash Elements Do Not Autovivify" 4 +.IX Item "Tied/Magical Array/Hash Elements Do Not Autovivify" +.IP "Unicode in package/class and subroutine names does not work" 4 +.IX Item "Unicode in package/class and subroutine names does not work" +.RE +.RS 4 +.RE +.IP "Platform Specific Problems" 4 +.IX Item "Platform Specific Problems" +.RS 4 +.IP AIX 4 +.IX Item "AIX" +.IP "Alpha systems with old gccs fail several tests" 4 +.IX Item "Alpha systems with old gccs fail several tests" +.IP AmigaOS 4 +.IX Item "AmigaOS" +.IP BeOS 4 +.IX Item "BeOS" +.IP "Cygwin ""unable to remap""" 4 +.IX Item "Cygwin ""unable to remap""" +.IP "Cygwin ndbm tests fail on FAT" 4 +.IX Item "Cygwin ndbm tests fail on FAT" +.IP "DJGPP Failures" 4 +.IX Item "DJGPP Failures" +.IP "FreeBSD built with ithreads coredumps reading large directories" 4 +.IX Item "FreeBSD built with ithreads coredumps reading large directories" +.IP "FreeBSD Failing locale Test 117 For ISO 8859\-15 Locales" 4 +.IX Item "FreeBSD Failing locale Test 117 For ISO 8859-15 Locales" +.IP "IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5" 4 +.IX Item "IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5" +.IP "HP-UX lib/posix Subtest 9 Fails When LP64\-Configured" 4 +.IX Item "HP-UX lib/posix Subtest 9 Fails When LP64-Configured" +.IP "Linux with glibc 2.2.5 fails t/op/int subtest #6 with \-Duse64bitint" 4 +.IX Item "Linux with glibc 2.2.5 fails t/op/int subtest #6 with -Duse64bitint" +.IP "Linux With Sfio Fails op/misc Test 48" 4 +.IX Item "Linux With Sfio Fails op/misc Test 48" +.IP "Mac OS X" 4 +.IX Item "Mac OS X" +.IP "Mac OS X dyld undefined symbols" 4 +.IX Item "Mac OS X dyld undefined symbols" +.IP "OS/2 Test Failures" 4 +.IX Item "OS/2 Test Failures" +.IP "op/sprintf tests 91, 129, and 130" 4 +.IX Item "op/sprintf tests 91, 129, and 130" +.IP SCO 4 +.IX Item "SCO" +.IP "Solaris 2.5" 4 +.IX Item "Solaris 2.5" +.IP "Solaris x86 Fails Tests With \-Duse64bitint" 4 +.IX Item "Solaris x86 Fails Tests With -Duse64bitint" +.IP "SUPER-UX (NEC SX)" 4 +.IX Item "SUPER-UX (NEC SX)" +.IP "Term::ReadKey not working on Win32" 4 +.IX Item "Term::ReadKey not working on Win32" +.IP UNICOS/mk 4 +.IX Item "UNICOS/mk" +.IP UTS 4 +.IX Item "UTS" +.IP "VOS (Stratus)" 4 +.IX Item "VOS (Stratus)" +.IP VMS 4 +.IX Item "VMS" +.IP Win32 4 +.IX Item "Win32" +.IP "XML::Parser not working" 4 +.IX Item "XML::Parser not working" +.IP "z/OS (OS/390)" 4 +.IX Item "z/OS (OS/390)" +.IP "Unicode Support on EBCDIC Still Spotty" 4 +.IX Item "Unicode Support on EBCDIC Still Spotty" +.IP "Seen In Perl 5.7 But Gone Now" 4 +.IX Item "Seen In Perl 5.7 But Gone Now" +.RE +.RS 4 +.RE +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perl561delta \- what's new for perl v5.6.1" +.IX Subsection "perl561delta - what's new for perl v5.6.1" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Summary of changes between 5.6.0 and 5.6.1" 4 +.IX Item "Summary of changes between 5.6.0 and 5.6.1" +.RS 4 +.IP "Security Issues" 4 +.IX Item "Security Issues" +.IP "Core bug fixes" 4 +.IX Item "Core bug fixes" +.PD +\&\f(CWUNIVERSAL::isa()\fR, Memory leaks, Numeric conversions, qw(a\e\eb), \fBcaller()\fR, +Bugs in regular expressions, "slurp" mode, Autovivification of symbolic +references to special variables, Lexical warnings, Spurious warnings and +errors, \fBglob()\fR, Tainting, \fBsort()\fR, #line directives, Subroutine prototypes, +\&\fBmap()\fR, Debugger, PERL5OPT, \fBchop()\fR, Unicode support, 64\-bit support, +Compiler, Lvalue subroutines, IO::Socket, File::Find, xsubpp, \f(CW\*(C`no +Module;\*(C'\fR, Tests +.IP "Core features" 4 +.IX Item "Core features" +.PD 0 +.IP "Configuration issues" 4 +.IX Item "Configuration issues" +.IP Documentation 4 +.IX Item "Documentation" +.IP "Bundled modules" 4 +.IX Item "Bundled modules" +.PD +B::Concise, File::Temp, Pod::LaTeX, Pod::Text::Overstrike, CGI, CPAN, +Class::Struct, DB_File, Devel::Peek, File::Find, Getopt::Long, IO::Poll, +IPC::Open3, Math::BigFloat, Math::Complex, Net::Ping, Opcode, Pod::Parser, +Pod::Text, SDBM_File, Sys::Syslog, Tie::RefHash, Tie::SubstrHash +.IP "Platform-specific improvements" 4 +.IX Item "Platform-specific improvements" +NCR MP-RAS, NonStop-UX +.RE +.RS 4 +.RE +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.PD 0 +.IP "Interpreter cloning, threads, and concurrency" 4 +.IX Item "Interpreter cloning, threads, and concurrency" +.IP "Lexically scoped warning categories" 4 +.IX Item "Lexically scoped warning categories" +.IP "Unicode and UTF\-8 support" 4 +.IX Item "Unicode and UTF-8 support" +.IP "Support for interpolating named characters" 4 +.IX Item "Support for interpolating named characters" +.IP """our"" declarations" 4 +.IX Item """our"" declarations" +.IP "Support for strings represented as a vector of ordinals" 4 +.IX Item "Support for strings represented as a vector of ordinals" +.IP "Improved Perl version numbering system" 4 +.IX Item "Improved Perl version numbering system" +.IP "New syntax for declaring subroutine attributes" 4 +.IX Item "New syntax for declaring subroutine attributes" +.IP "File and directory handles can be autovivified" 4 +.IX Item "File and directory handles can be autovivified" +.IP "\fBopen()\fR with more than two arguments" 4 +.IX Item "open() with more than two arguments" +.IP "64\-bit support" 4 +.IX Item "64-bit support" +.IP "Large file support" 4 +.IX Item "Large file support" +.IP "Long doubles" 4 +.IX Item "Long doubles" +.IP """more bits""" 4 +.IX Item """more bits""" +.IP "Enhanced support for \fBsort()\fR subroutines" 4 +.IX Item "Enhanced support for sort() subroutines" +.ie n .IP """sort $coderef @foo"" allowed" 4 +.el .IP "\f(CWsort $coderef @foo\fR allowed" 4 +.IX Item "sort $coderef @foo allowed" +.IP "File globbing implemented internally" 4 +.IX Item "File globbing implemented internally" +.IP "Support for CHECK blocks" 4 +.IX Item "Support for CHECK blocks" +.IP "POSIX character class syntax [: :] supported" 4 +.IX Item "POSIX character class syntax [: :] supported" +.IP "Better pseudo-random number generator" 4 +.IX Item "Better pseudo-random number generator" +.ie n .IP "Improved ""qw//"" operator" 4 +.el .IP "Improved \f(CWqw//\fR operator" 4 +.IX Item "Improved qw// operator" +.IP "Better worst-case behavior of hashes" 4 +.IX Item "Better worst-case behavior of hashes" +.IP "\fBpack()\fR format 'Z' supported" 4 +.IX Item "pack() format 'Z' supported" +.IP "\fBpack()\fR format modifier '!' supported" 4 +.IX Item "pack() format modifier '!' supported" +.IP "\fBpack()\fR and \fBunpack()\fR support counted strings" 4 +.IX Item "pack() and unpack() support counted strings" +.IP "Comments in \fBpack()\fR templates" 4 +.IX Item "Comments in pack() templates" +.IP "Weak references" 4 +.IX Item "Weak references" +.IP "Binary numbers supported" 4 +.IX Item "Binary numbers supported" +.IP "Lvalue subroutines" 4 +.IX Item "Lvalue subroutines" +.IP "Some arrows may be omitted in calls through references" 4 +.IX Item "Some arrows may be omitted in calls through references" +.IP "Boolean assignment operators are legal lvalues" 4 +.IX Item "Boolean assignment operators are legal lvalues" +.IP "\fBexists()\fR is supported on subroutine names" 4 +.IX Item "exists() is supported on subroutine names" +.IP "\fBexists()\fR and \fBdelete()\fR are supported on array elements" 4 +.IX Item "exists() and delete() are supported on array elements" +.IP "Pseudo-hashes work better" 4 +.IX Item "Pseudo-hashes work better" +.IP "Automatic flushing of output buffers" 4 +.IX Item "Automatic flushing of output buffers" +.IP "Better diagnostics on meaningless filehandle operations" 4 +.IX Item "Better diagnostics on meaningless filehandle operations" +.IP "Where possible, buffered data discarded from duped input filehandle" 4 +.IX Item "Where possible, buffered data discarded from duped input filehandle" +.IP "\fBeof()\fR has the same old magic as <>" 4 +.IX Item "eof() has the same old magic as <>" +.IP "\fBbinmode()\fR can be used to set :crlf and :raw modes" 4 +.IX Item "binmode() can be used to set :crlf and :raw modes" +.ie n .IP """\-T"" filetest recognizes UTF\-8 encoded files as ""text""" 4 +.el .IP "\f(CW\-T\fR filetest recognizes UTF\-8 encoded files as ""text""" 4 +.IX Item "-T filetest recognizes UTF-8 encoded files as ""text""" +.IP "\fBsystem()\fR, backticks and pipe open now reflect \fBexec()\fR failure" 4 +.IX Item "system(), backticks and pipe open now reflect exec() failure" +.IP "Improved diagnostics" 4 +.IX Item "Improved diagnostics" +.IP "Diagnostics follow STDERR" 4 +.IX Item "Diagnostics follow STDERR" +.IP "More consistent close-on-exec behavior" 4 +.IX Item "More consistent close-on-exec behavior" +.IP "\fBsyswrite()\fR ease-of-use" 4 +.IX Item "syswrite() ease-of-use" +.IP "Better syntax checks on parenthesized unary operators" 4 +.IX Item "Better syntax checks on parenthesized unary operators" +.IP "Bit operators support full native integer width" 4 +.IX Item "Bit operators support full native integer width" +.IP "Improved security features" 4 +.IX Item "Improved security features" +.IP "More functional bareword prototype (*)" 4 +.IX Item "More functional bareword prototype (*)" +.ie n .IP """require"" and ""do"" may be overridden" 4 +.el .IP "\f(CWrequire\fR and \f(CWdo\fR may be overridden" 4 +.IX Item "require and do may be overridden" +.IP "$^X variables may now have names longer than one character" 4 +.IX Item "$^X variables may now have names longer than one character" +.ie n .IP "New variable $^C reflects ""\-c"" switch" 4 +.el .IP "New variable $^C reflects \f(CW\-c\fR switch" 4 +.IX Item "New variable $^C reflects -c switch" +.IP "New variable $^V contains Perl version as a string" 4 +.IX Item "New variable $^V contains Perl version as a string" +.IP "Optional Y2K warnings" 4 +.IX Item "Optional Y2K warnings" +.IP "Arrays now always interpolate into double-quoted strings" 4 +.IX Item "Arrays now always interpolate into double-quoted strings" +.IP "@\- and @+ provide starting/ending offsets of regex submatches" 4 +.IX Item "@- and @+ provide starting/ending offsets of regex submatches" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP Modules 4 +.IX Item "Modules" +.PD +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 +.IP Pragmata 4 +.IX Item "Pragmata" +.RE +.RS 4 +.RE +.PD 0 +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP dprofpp 4 +.IX Item "dprofpp" +.IP find2perl 4 +.IX Item "find2perl" +.IP h2xs 4 +.IX Item "h2xs" +.IP perlcc 4 +.IX Item "perlcc" +.IP perldoc 4 +.IX Item "perldoc" +.IP "The Perl Debugger" 4 +.IX Item "The Perl Debugger" +.RE +.RS 4 +.RE +.IP "Improved Documentation" 4 +.IX Item "Improved Documentation" +.PD +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 +.IP "Performance enhancements" 4 +.IX Item "Performance enhancements" +.RS 4 +.PD 0 +.ie n .IP "Simple \fBsort()\fR using { $a <=> $b } and the like are optimized" 4 +.el .IP "Simple \fBsort()\fR using { \f(CW$a\fR <=> \f(CW$b\fR } and the like are optimized" 4 +.IX Item "Simple sort() using { $a <=> $b } and the like are optimized" +.IP "Optimized assignments to lexical variables" 4 +.IX Item "Optimized assignments to lexical variables" +.IP "Faster subroutine calls" 4 +.IX Item "Faster subroutine calls" +.IP "\fBdelete()\fR, \fBeach()\fR, \fBvalues()\fR and hash iteration are faster" 4 +.IX Item "delete(), each(), values() and hash iteration are faster" +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "\-Dusethreads means something different" 4 +.IX Item "-Dusethreads means something different" +.IP "New Configure flags" 4 +.IX Item "New Configure flags" +.IP "Threadedness and 64\-bitness now more daring" 4 +.IX Item "Threadedness and 64-bitness now more daring" +.IP "Long Doubles" 4 +.IX Item "Long Doubles" +.IP \-Dusemorebits 4 +.IX Item "-Dusemorebits" +.IP \-Duselargefiles 4 +.IX Item "-Duselargefiles" +.IP installusrbinperl 4 +.IX Item "installusrbinperl" +.IP "SOCKS support" 4 +.IX Item "SOCKS support" +.ie n .IP """\-A"" flag" 4 +.el .IP "\f(CW\-A\fR flag" 4 +.IX Item "-A flag" +.IP "Enhanced Installation Directories" 4 +.IX Item "Enhanced Installation Directories" +.IP "gcc automatically tried if 'cc' does not seem to be working" 4 +.IX Item "gcc automatically tried if 'cc' does not seem to be working" +.RE +.RS 4 +.RE +.IP "Platform specific changes" 4 +.IX Item "Platform specific changes" +.RS 4 +.IP "Supported platforms" 4 +.IX Item "Supported platforms" +.IP DOS 4 +.IX Item "DOS" +.IP "OS390 (OpenEdition MVS)" 4 +.IX Item "OS390 (OpenEdition MVS)" +.IP VMS 4 +.IX Item "VMS" +.IP Win32 4 +.IX Item "Win32" +.RE +.RS 4 +.RE +.IP "Significant bug fixes" 4 +.IX Item "Significant bug fixes" +.RS 4 +.IP "<HANDLE> on empty files" 4 +.IX Item "<HANDLE> on empty files" +.ie n .IP """eval \*(Aq...\*(Aq"" improvements" 4 +.el .IP "\f(CWeval \*(Aq...\*(Aq\fR improvements" 4 +.IX Item "eval ... improvements" +.IP "All compilation errors are true errors" 4 +.IX Item "All compilation errors are true errors" +.IP "Implicitly closed filehandles are safer" 4 +.IX Item "Implicitly closed filehandles are safer" +.IP "Behavior of list slices is more consistent" 4 +.IX Item "Behavior of list slices is more consistent" +.ie n .IP """(\e$)"" prototype and $foo{a}" 4 +.el .IP "\f(CW(\e$)\fR prototype and \f(CW$foo{a}\fR" 4 +.IX Item "($) prototype and $foo{a}" +.ie n .IP """goto &sub"" and AUTOLOAD" 4 +.el .IP "\f(CWgoto &sub\fR and AUTOLOAD" 4 +.IX Item "goto &sub and AUTOLOAD" +.ie n .IP """\-bareword"" allowed under ""use integer""" 4 +.el .IP "\f(CW\-bareword\fR allowed under \f(CWuse integer\fR" 4 +.IX Item "-bareword allowed under use integer" +.IP "Failures in \fBDESTROY()\fR" 4 +.IX Item "Failures in DESTROY()" +.IP "Locale bugs fixed" 4 +.IX Item "Locale bugs fixed" +.IP "Memory leaks" 4 +.IX Item "Memory leaks" +.IP "Spurious subroutine stubs after failed subroutine calls" 4 +.IX Item "Spurious subroutine stubs after failed subroutine calls" +.ie n .IP "Taint failures under ""\-U""" 4 +.el .IP "Taint failures under \f(CW\-U\fR" 4 +.IX Item "Taint failures under -U" +.ie n .IP "END blocks and the ""\-c"" switch" 4 +.el .IP "END blocks and the \f(CW\-c\fR switch" 4 +.IX Item "END blocks and the -c switch" +.IP "Potential to leak DATA filehandles" 4 +.IX Item "Potential to leak DATA filehandles" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.PD +"%s" variable \f(CW%s\fR masks earlier declaration in same \f(CW%s\fR, "my sub" not yet +implemented, "our" variable \f(CW%s\fR redeclared, '!' allowed only after types \f(CW%s\fR, +/ 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 +\&\e\e%c passed through, /%s/: Unrecognized escape \e\e%c in character class +passed through, /%s/ should probably be written as "%s", %s() called too +early to check prototype, \f(CW%s\fR argument is not a HASH or ARRAY element, \f(CW%s\fR +argument is not a HASH or ARRAY element or slice, \f(CW%s\fR argument is not a +subroutine name, \f(CW%s\fR package attribute may clash with future reserved word: +\&\f(CW%s\fR, (in cleanup) \f(CW%s\fR, <> should be quotes, Attempt to join self, Bad evalled +substitution pattern, Bad \fBrealloc()\fR ignored, Bareword found in conditional, +Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector +size > 32 non-portable, Buffer overflow in prime_env_iter: \f(CW%s\fR, Can't check +filesystem of script "%s", Can't declare class for non-scalar \f(CW%s\fR in "%s", +Can't declare \f(CW%s\fR 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 \f(CW%s:\fR \f(CW%s\fR, skipping file, Can't return \f(CW%s\fR from lvalue subroutine, Can't +weaken a nonreference, Character class [:%s:] unknown, Character class +syntax [%s] belongs inside character classes, Constant is not \f(CW%s\fR reference, +constant(%s): \f(CW%s\fR, 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 +\&\f(CW%s\fR failed, false [] range "%s" in regexp, Filehandle \f(CW%s\fR opened only for +output, \fBflock()\fR on closed filehandle \f(CW%s\fR, 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 \f(CW%s\fR, Illegal binary digit \f(CW%s\fR ignored, Illegal +number of bits in vec, Integer overflow in \f(CW%s\fR number, Invalid \f(CW%s\fR attribute: +\&\f(CW%s\fR, Invalid \f(CW%s\fR attributes: \f(CW%s\fR, invalid [] range "%s" in regexp, Invalid +separator character \f(CW%s\fR in attribute list, Invalid separator character \f(CW%s\fR in +subroutine attribute list, leaving effective \f(CW%s\fR failed, Lvalue subs +returning \f(CW%s\fR not implemented yet, Method \f(CW%s\fR not permitted, Missing +\&\f(CW%sbrace\fR%s on \eN{}, Missing command in piped open, Missing name in "my sub", +No \f(CW%s\fR specified for \-%c, No package name allowed for variable \f(CW%s\fR 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 \f(CW%s\fR in string, +Possible Y2K bug: \f(CW%s\fR, pragma "attrs" is deprecated, use "sub NAME : ATTRS" +instead, Premature end of script headers, Repeat count in pack overflows, +Repeat count in unpack overflows, \fBrealloc()\fR of freed memory ignored, +Reference is already weak, setpgrp can't take arguments, Strange *+?{} on +zero-length expression, switching effective \f(CW%s\fR 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 \f(CW%s\fR block, Unknown \fBopen()\fR mode +\&'%s', Unknown process \f(CW%x\fR sent message to prime_env_iter: \f(CW%s\fR, Unrecognized +escape \e\e%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 +.IP "New tests" 4 +.IX Item "New tests" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Perl Source Incompatibilities" 4 +.IX Item "Perl Source Incompatibilities" +.PD +CHECK is a new keyword, Treatment of list slices of undef has changed, +Format of \f(CW$English::PERL_VERSION\fR is different, Literals of the form +\&\f(CW1.2.3\fR parse differently, Possibly changed pseudo-random number +generator, Hashing function for hash keys has changed, \f(CW\*(C`undef\*(C'\fR fails on +read only values, Close-on-exec bit may be set on pipe and socket handles, +Writing \f(CW"$$1"\fR to mean \f(CW"${$}1"\fR is unsupported, \fBdelete()\fR, \fBeach()\fR, +\&\fBvalues()\fR and \f(CW\*(C`\e(%h)\*(C'\fR, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, +Text of some diagnostic output has changed, \f(CW\*(C`%@\*(C'\fR has been removed, +Parenthesized \fBnot()\fR behaves like a list operator, Semantics of bareword +prototype \f(CW\*(C`(*)\*(C'\fR have changed, Semantics of bit operators may have changed +on 64\-bit platforms, More builtins taint their results +.IP "C Source Incompatibilities" 4 +.IX Item "C Source Incompatibilities" +\&\f(CW\*(C`PERL_POLLUTE\*(C'\fR, \f(CW\*(C`PERL_IMPLICIT_CONTEXT\*(C'\fR, \f(CW\*(C`PERL_POLLUTE_MALLOC\*(C'\fR +.IP "Compatible C Source API Changes" 4 +.IX Item "Compatible C Source API Changes" +\&\f(CW\*(C`PATCHLEVEL\*(C'\fR is now \f(CW\*(C`PERL_VERSION\*(C'\fR +.IP "Binary Incompatibilities" 4 +.IX Item "Binary Incompatibilities" +.RE +.RS 4 +.RE +.PD 0 +.IP "Known Problems" 4 +.IX Item "Known Problems" +.RS 4 +.IP "Localizing a tied hash element may leak memory" 4 +.IX Item "Localizing a tied hash element may leak memory" +.IP "Known test failures" 4 +.IX Item "Known test failures" +.IP "EBCDIC platforms not fully supported" 4 +.IX Item "EBCDIC platforms not fully supported" +.IP "UNICOS/mk CC failures during Configure run" 4 +.IX Item "UNICOS/mk CC failures during Configure run" +.IP "Arrow operator and arrays" 4 +.IX Item "Arrow operator and arrays" +.IP "Experimental features" 4 +.IX Item "Experimental features" +.PD +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 code constructs: +.RE +.RS 4 +.RE +.IP "Obsolete Diagnostics" 4 +.IX 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 +\&\e@%s, Probable precedence problem on \f(CW%s\fR, regexp too big, Use of "$$<digit>" +to mean "${$}<digit>" is deprecated +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perl56delta \- what's new for perl v5.6.0" +.IX Subsection "perl56delta - what's new for perl v5.6.0" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Core Enhancements" 4 +.IX Item "Core Enhancements" +.RS 4 +.IP "Interpreter cloning, threads, and concurrency" 4 +.IX Item "Interpreter cloning, threads, and concurrency" +.IP "Lexically scoped warning categories" 4 +.IX Item "Lexically scoped warning categories" +.IP "Unicode and UTF\-8 support" 4 +.IX Item "Unicode and UTF-8 support" +.IP "Support for interpolating named characters" 4 +.IX Item "Support for interpolating named characters" +.IP """our"" declarations" 4 +.IX Item """our"" declarations" +.IP "Support for strings represented as a vector of ordinals" 4 +.IX Item "Support for strings represented as a vector of ordinals" +.IP "Improved Perl version numbering system" 4 +.IX Item "Improved Perl version numbering system" +.IP "New syntax for declaring subroutine attributes" 4 +.IX Item "New syntax for declaring subroutine attributes" +.IP "File and directory handles can be autovivified" 4 +.IX Item "File and directory handles can be autovivified" +.IP "\fBopen()\fR with more than two arguments" 4 +.IX Item "open() with more than two arguments" +.IP "64\-bit support" 4 +.IX Item "64-bit support" +.IP "Large file support" 4 +.IX Item "Large file support" +.IP "Long doubles" 4 +.IX Item "Long doubles" +.IP """more bits""" 4 +.IX Item """more bits""" +.IP "Enhanced support for \fBsort()\fR subroutines" 4 +.IX Item "Enhanced support for sort() subroutines" +.ie n .IP """sort $coderef @foo"" allowed" 4 +.el .IP "\f(CWsort $coderef @foo\fR allowed" 4 +.IX Item "sort $coderef @foo allowed" +.IP "File globbing implemented internally" 4 +.IX Item "File globbing implemented internally" +.IP "Support for CHECK blocks" 4 +.IX Item "Support for CHECK blocks" +.IP "POSIX character class syntax [: :] supported" 4 +.IX Item "POSIX character class syntax [: :] supported" +.IP "Better pseudo-random number generator" 4 +.IX Item "Better pseudo-random number generator" +.ie n .IP "Improved ""qw//"" operator" 4 +.el .IP "Improved \f(CWqw//\fR operator" 4 +.IX Item "Improved qw// operator" +.IP "Better worst-case behavior of hashes" 4 +.IX Item "Better worst-case behavior of hashes" +.IP "\fBpack()\fR format 'Z' supported" 4 +.IX Item "pack() format 'Z' supported" +.IP "\fBpack()\fR format modifier '!' supported" 4 +.IX Item "pack() format modifier '!' supported" +.IP "\fBpack()\fR and \fBunpack()\fR support counted strings" 4 +.IX Item "pack() and unpack() support counted strings" +.IP "Comments in \fBpack()\fR templates" 4 +.IX Item "Comments in pack() templates" +.IP "Weak references" 4 +.IX Item "Weak references" +.IP "Binary numbers supported" 4 +.IX Item "Binary numbers supported" +.IP "Lvalue subroutines" 4 +.IX Item "Lvalue subroutines" +.IP "Some arrows may be omitted in calls through references" 4 +.IX Item "Some arrows may be omitted in calls through references" +.IP "Boolean assignment operators are legal lvalues" 4 +.IX Item "Boolean assignment operators are legal lvalues" +.IP "\fBexists()\fR is supported on subroutine names" 4 +.IX Item "exists() is supported on subroutine names" +.IP "\fBexists()\fR and \fBdelete()\fR are supported on array elements" 4 +.IX Item "exists() and delete() are supported on array elements" +.IP "Pseudo-hashes work better" 4 +.IX Item "Pseudo-hashes work better" +.IP "Automatic flushing of output buffers" 4 +.IX Item "Automatic flushing of output buffers" +.IP "Better diagnostics on meaningless filehandle operations" 4 +.IX Item "Better diagnostics on meaningless filehandle operations" +.IP "Where possible, buffered data discarded from duped input filehandle" 4 +.IX Item "Where possible, buffered data discarded from duped input filehandle" +.IP "\fBeof()\fR has the same old magic as <>" 4 +.IX Item "eof() has the same old magic as <>" +.IP "\fBbinmode()\fR can be used to set :crlf and :raw modes" 4 +.IX Item "binmode() can be used to set :crlf and :raw modes" +.ie n .IP """\-T"" filetest recognizes UTF\-8 encoded files as ""text""" 4 +.el .IP "\f(CW\-T\fR filetest recognizes UTF\-8 encoded files as ""text""" 4 +.IX Item "-T filetest recognizes UTF-8 encoded files as ""text""" +.IP "\fBsystem()\fR, backticks and pipe open now reflect \fBexec()\fR failure" 4 +.IX Item "system(), backticks and pipe open now reflect exec() failure" +.IP "Improved diagnostics" 4 +.IX Item "Improved diagnostics" +.IP "Diagnostics follow STDERR" 4 +.IX Item "Diagnostics follow STDERR" +.IP "More consistent close-on-exec behavior" 4 +.IX Item "More consistent close-on-exec behavior" +.IP "\fBsyswrite()\fR ease-of-use" 4 +.IX Item "syswrite() ease-of-use" +.IP "Better syntax checks on parenthesized unary operators" 4 +.IX Item "Better syntax checks on parenthesized unary operators" +.IP "Bit operators support full native integer width" 4 +.IX Item "Bit operators support full native integer width" +.IP "Improved security features" 4 +.IX Item "Improved security features" +.IP "More functional bareword prototype (*)" 4 +.IX Item "More functional bareword prototype (*)" +.ie n .IP """require"" and ""do"" may be overridden" 4 +.el .IP "\f(CWrequire\fR and \f(CWdo\fR may be overridden" 4 +.IX Item "require and do may be overridden" +.IP "$^X variables may now have names longer than one character" 4 +.IX Item "$^X variables may now have names longer than one character" +.ie n .IP "New variable $^C reflects ""\-c"" switch" 4 +.el .IP "New variable $^C reflects \f(CW\-c\fR switch" 4 +.IX Item "New variable $^C reflects -c switch" +.IP "New variable $^V contains Perl version as a string" 4 +.IX Item "New variable $^V contains Perl version as a string" +.IP "Optional Y2K warnings" 4 +.IX Item "Optional Y2K warnings" +.IP "Arrays now always interpolate into double-quoted strings" 4 +.IX Item "Arrays now always interpolate into double-quoted strings" +.IP "@\- and @+ provide starting/ending offsets of regex matches" 4 +.IX Item "@- and @+ provide starting/ending offsets of regex matches" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP Modules 4 +.IX Item "Modules" +.PD +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 +.IP Pragmata 4 +.IX Item "Pragmata" +.RE +.RS 4 +.RE +.PD 0 +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP dprofpp 4 +.IX Item "dprofpp" +.IP find2perl 4 +.IX Item "find2perl" +.IP h2xs 4 +.IX Item "h2xs" +.IP perlcc 4 +.IX Item "perlcc" +.IP perldoc 4 +.IX Item "perldoc" +.IP "The Perl Debugger" 4 +.IX Item "The Perl Debugger" +.RE +.RS 4 +.RE +.IP "Improved Documentation" 4 +.IX Item "Improved Documentation" +.PD +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 +.IP "Performance enhancements" 4 +.IX Item "Performance enhancements" +.RS 4 +.PD 0 +.ie n .IP "Simple \fBsort()\fR using { $a <=> $b } and the like are optimized" 4 +.el .IP "Simple \fBsort()\fR using { \f(CW$a\fR <=> \f(CW$b\fR } and the like are optimized" 4 +.IX Item "Simple sort() using { $a <=> $b } and the like are optimized" +.IP "Optimized assignments to lexical variables" 4 +.IX Item "Optimized assignments to lexical variables" +.IP "Faster subroutine calls" 4 +.IX Item "Faster subroutine calls" +.IP "\fBdelete()\fR, \fBeach()\fR, \fBvalues()\fR and hash iteration are faster" 4 +.IX Item "delete(), each(), values() and hash iteration are faster" +.RE +.RS 4 +.RE +.IP "Installation and Configuration Improvements" 4 +.IX Item "Installation and Configuration Improvements" +.RS 4 +.IP "\-Dusethreads means something different" 4 +.IX Item "-Dusethreads means something different" +.IP "New Configure flags" 4 +.IX Item "New Configure flags" +.IP "Threadedness and 64\-bitness now more daring" 4 +.IX Item "Threadedness and 64-bitness now more daring" +.IP "Long Doubles" 4 +.IX Item "Long Doubles" +.IP \-Dusemorebits 4 +.IX Item "-Dusemorebits" +.IP \-Duselargefiles 4 +.IX Item "-Duselargefiles" +.IP installusrbinperl 4 +.IX Item "installusrbinperl" +.IP "SOCKS support" 4 +.IX Item "SOCKS support" +.ie n .IP """\-A"" flag" 4 +.el .IP "\f(CW\-A\fR flag" 4 +.IX Item "-A flag" +.IP "Enhanced Installation Directories" 4 +.IX Item "Enhanced Installation Directories" +.RE +.RS 4 +.RE +.IP "Platform specific changes" 4 +.IX Item "Platform specific changes" +.RS 4 +.IP "Supported platforms" 4 +.IX Item "Supported platforms" +.IP DOS 4 +.IX Item "DOS" +.IP "OS390 (OpenEdition MVS)" 4 +.IX Item "OS390 (OpenEdition MVS)" +.IP VMS 4 +.IX Item "VMS" +.IP Win32 4 +.IX Item "Win32" +.RE +.RS 4 +.RE +.IP "Significant bug fixes" 4 +.IX Item "Significant bug fixes" +.RS 4 +.IP "<HANDLE> on empty files" 4 +.IX Item "<HANDLE> on empty files" +.ie n .IP """eval \*(Aq...\*(Aq"" improvements" 4 +.el .IP "\f(CWeval \*(Aq...\*(Aq\fR improvements" 4 +.IX Item "eval ... improvements" +.IP "All compilation errors are true errors" 4 +.IX Item "All compilation errors are true errors" +.IP "Implicitly closed filehandles are safer" 4 +.IX Item "Implicitly closed filehandles are safer" +.IP "Behavior of list slices is more consistent" 4 +.IX Item "Behavior of list slices is more consistent" +.ie n .IP """(\e$)"" prototype and $foo{a}" 4 +.el .IP "\f(CW(\e$)\fR prototype and \f(CW$foo{a}\fR" 4 +.IX Item "($) prototype and $foo{a}" +.ie n .IP """goto &sub"" and AUTOLOAD" 4 +.el .IP "\f(CWgoto &sub\fR and AUTOLOAD" 4 +.IX Item "goto &sub and AUTOLOAD" +.ie n .IP """\-bareword"" allowed under ""use integer""" 4 +.el .IP "\f(CW\-bareword\fR allowed under \f(CWuse integer\fR" 4 +.IX Item "-bareword allowed under use integer" +.IP "Failures in \fBDESTROY()\fR" 4 +.IX Item "Failures in DESTROY()" +.IP "Locale bugs fixed" 4 +.IX Item "Locale bugs fixed" +.IP "Memory leaks" 4 +.IX Item "Memory leaks" +.IP "Spurious subroutine stubs after failed subroutine calls" 4 +.IX Item "Spurious subroutine stubs after failed subroutine calls" +.ie n .IP "Taint failures under ""\-U""" 4 +.el .IP "Taint failures under \f(CW\-U\fR" 4 +.IX Item "Taint failures under -U" +.ie n .IP "END blocks and the ""\-c"" switch" 4 +.el .IP "END blocks and the \f(CW\-c\fR switch" 4 +.IX Item "END blocks and the -c switch" +.IP "Potential to leak DATA filehandles" 4 +.IX Item "Potential to leak DATA filehandles" +.RE +.RS 4 +.RE +.IP "New or Changed Diagnostics" 4 +.IX Item "New or Changed Diagnostics" +.PD +"%s" variable \f(CW%s\fR masks earlier declaration in same \f(CW%s\fR, "my sub" not yet +implemented, "our" variable \f(CW%s\fR redeclared, '!' allowed only after types \f(CW%s\fR, +/ 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 +\&\e\e%c passed through, /%s/: Unrecognized escape \e\e%c in character class +passed through, /%s/ should probably be written as "%s", %s() called too +early to check prototype, \f(CW%s\fR argument is not a HASH or ARRAY element, \f(CW%s\fR +argument is not a HASH or ARRAY element or slice, \f(CW%s\fR argument is not a +subroutine name, \f(CW%s\fR package attribute may clash with future reserved word: +\&\f(CW%s\fR, (in cleanup) \f(CW%s\fR, <> should be quotes, Attempt to join self, Bad evalled +substitution pattern, Bad \fBrealloc()\fR ignored, Bareword found in conditional, +Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector +size > 32 non-portable, Buffer overflow in prime_env_iter: \f(CW%s\fR, Can't check +filesystem of script "%s", Can't declare class for non-scalar \f(CW%s\fR in "%s", +Can't declare \f(CW%s\fR 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 \f(CW%s:\fR \f(CW%s\fR, skipping file, Can't return \f(CW%s\fR from lvalue subroutine, Can't +weaken a nonreference, Character class [:%s:] unknown, Character class +syntax [%s] belongs inside character classes, Constant is not \f(CW%s\fR reference, +constant(%s): \f(CW%s\fR, 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 +\&\f(CW%s\fR failed, false [] range "%s" in regexp, Filehandle \f(CW%s\fR opened only for +output, \fBflock()\fR on closed filehandle \f(CW%s\fR, 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 \f(CW%s\fR, Illegal binary digit \f(CW%s\fR ignored, Illegal +number of bits in vec, Integer overflow in \f(CW%s\fR number, Invalid \f(CW%s\fR attribute: +\&\f(CW%s\fR, Invalid \f(CW%s\fR attributes: \f(CW%s\fR, invalid [] range "%s" in regexp, Invalid +separator character \f(CW%s\fR in attribute list, Invalid separator character \f(CW%s\fR in +subroutine attribute list, leaving effective \f(CW%s\fR failed, Lvalue subs +returning \f(CW%s\fR not implemented yet, Method \f(CW%s\fR not permitted, Missing +\&\f(CW%sbrace\fR%s on \eN{}, Missing command in piped open, Missing name in "my sub", +No \f(CW%s\fR specified for \-%c, No package name allowed for variable \f(CW%s\fR 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 \f(CW%s\fR in string, +Possible Y2K bug: \f(CW%s\fR, pragma "attrs" is deprecated, use "sub NAME : ATTRS" +instead, Premature end of script headers, Repeat count in pack overflows, +Repeat count in unpack overflows, \fBrealloc()\fR of freed memory ignored, +Reference is already weak, setpgrp can't take arguments, Strange *+?{} on +zero-length expression, switching effective \f(CW%s\fR 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 \f(CW%s\fR block, Unknown \fBopen()\fR mode +\&'%s', Unknown process \f(CW%x\fR sent message to prime_env_iter: \f(CW%s\fR, Unrecognized +escape \e\e%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 +.IP "New tests" 4 +.IX Item "New tests" +.PD 0 +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "Perl Source Incompatibilities" 4 +.IX Item "Perl Source Incompatibilities" +.PD +CHECK is a new keyword, Treatment of list slices of undef has changed, +Format of \f(CW$English::PERL_VERSION\fR is different, Literals of the form +\&\f(CW1.2.3\fR parse differently, Possibly changed pseudo-random number +generator, Hashing function for hash keys has changed, \f(CW\*(C`undef\*(C'\fR fails on +read only values, Close-on-exec bit may be set on pipe and socket handles, +Writing \f(CW"$$1"\fR to mean \f(CW"${$}1"\fR is unsupported, \fBdelete()\fR, \fBeach()\fR, +\&\fBvalues()\fR and \f(CW\*(C`\e(%h)\*(C'\fR, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, +Text of some diagnostic output has changed, \f(CW\*(C`%@\*(C'\fR has been removed, +Parenthesized \fBnot()\fR behaves like a list operator, Semantics of bareword +prototype \f(CW\*(C`(*)\*(C'\fR have changed, Semantics of bit operators may have changed +on 64\-bit platforms, More builtins taint their results +.IP "C Source Incompatibilities" 4 +.IX Item "C Source Incompatibilities" +\&\f(CW\*(C`PERL_POLLUTE\*(C'\fR, \f(CW\*(C`PERL_IMPLICIT_CONTEXT\*(C'\fR, \f(CW\*(C`PERL_POLLUTE_MALLOC\*(C'\fR +.IP "Compatible C Source API Changes" 4 +.IX Item "Compatible C Source API Changes" +\&\f(CW\*(C`PATCHLEVEL\*(C'\fR is now \f(CW\*(C`PERL_VERSION\*(C'\fR +.IP "Binary Incompatibilities" 4 +.IX Item "Binary Incompatibilities" +.RE +.RS 4 +.RE +.PD 0 +.IP "Known Problems" 4 +.IX Item "Known Problems" +.RS 4 +.IP "Thread test failures" 4 +.IX Item "Thread test failures" +.IP "EBCDIC platforms not supported" 4 +.IX Item "EBCDIC platforms not supported" +.IP "In 64\-bit HP-UX the lib/io_multihomed test may hang" 4 +.IX Item "In 64-bit HP-UX the lib/io_multihomed test may hang" +.IP "NEXTSTEP 3.3 POSIX test failure" 4 +.IX Item "NEXTSTEP 3.3 POSIX test failure" +.IP "Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with gcc" 4 +.IX Item "Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with gcc" +.IP "UNICOS/mk CC failures during Configure run" 4 +.IX Item "UNICOS/mk CC failures during Configure run" +.IP "Arrow operator and arrays" 4 +.IX Item "Arrow operator and arrays" +.IP "Experimental features" 4 +.IX Item "Experimental features" +.PD +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 code constructs: +.RE +.RS 4 +.RE +.IP "Obsolete Diagnostics" 4 +.IX 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 +\&\e@%s, Probable precedence problem on \f(CW%s\fR, regexp too big, Use of "$$<digit>" +to mean "${$}<digit>" is deprecated +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perl5005delta \- what's new for perl5.005" +.IX Subsection "perl5005delta - what's new for perl5.005" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "About the new versioning system" 4 +.IX Item "About the new versioning system" +.IP "Incompatible Changes" 4 +.IX Item "Incompatible Changes" +.RS 4 +.IP "WARNING: This version is not binary compatible with Perl 5.004." 4 +.IX Item "WARNING: This version is not binary compatible with Perl 5.004." +.IP "Default installation structure has changed" 4 +.IX Item "Default installation structure has changed" +.IP "Perl Source Compatibility" 4 +.IX Item "Perl Source Compatibility" +.IP "C Source Compatibility" 4 +.IX Item "C Source Compatibility" +.IP "Binary Compatibility" 4 +.IX Item "Binary Compatibility" +.IP "Security fixes may affect compatibility" 4 +.IX Item "Security fixes may affect compatibility" +.IP "Relaxed new mandatory warnings introduced in 5.004" 4 +.IX Item "Relaxed new mandatory warnings introduced in 5.004" +.IP Licensing 4 +.IX Item "Licensing" +.RE +.RS 4 +.RE +.IP "Core Changes" 4 +.IX Item "Core Changes" +.RS 4 +.IP Threads 4 +.IX Item "Threads" +.IP Compiler 4 +.IX Item "Compiler" +.IP "Regular Expressions" 4 +.IX Item "Regular Expressions" +.PD +Many new and improved optimizations, Many bug fixes, New regular expression +constructs, New operator for precompiled regular expressions, Other +improvements, Incompatible changes +.IP "Improved \fBmalloc()\fR" 4 +.IX Item "Improved malloc()" +.PD 0 +.IP "Quicksort is internally implemented" 4 +.IX Item "Quicksort is internally implemented" +.IP "Reliable signals" 4 +.IX Item "Reliable signals" +.IP "Reliable stack pointers" 4 +.IX Item "Reliable stack pointers" +.IP "More generous treatment of carriage returns" 4 +.IX Item "More generous treatment of carriage returns" +.IP "Memory leaks" 4 +.IX Item "Memory leaks" +.IP "Better support for multiple interpreters" 4 +.IX Item "Better support for multiple interpreters" +.IP "Behavior of \fBlocal()\fR on array and hash elements is now well-defined" 4 +.IX Item "Behavior of local() on array and hash elements is now well-defined" +.ie n .IP """%!"" is transparently tied to the Errno module" 4 +.el .IP "\f(CW%!\fR is transparently tied to the Errno module" 4 +.IX Item "%! is transparently tied to the Errno module" +.IP "Pseudo-hashes are supported" 4 +.IX Item "Pseudo-hashes are supported" +.ie n .IP """EXPR foreach EXPR"" is supported" 4 +.el .IP "\f(CWEXPR foreach EXPR\fR is supported" 4 +.IX Item "EXPR foreach EXPR is supported" +.IP "Keywords can be globally overridden" 4 +.IX Item "Keywords can be globally overridden" +.ie n .IP "$^E is meaningful on Win32" 4 +.el .IP "\f(CW$^E\fR is meaningful on Win32" 4 +.IX Item "$^E is meaningful on Win32" +.ie n .IP """foreach (1..1000000)"" optimized" 4 +.el .IP "\f(CWforeach (1..1000000)\fR optimized" 4 +.IX Item "foreach (1..1000000) optimized" +.ie n .IP """Foo::"" can be used as implicitly quoted package name" 4 +.el .IP "\f(CWFoo::\fR can be used as implicitly quoted package name" 4 +.IX Item "Foo:: can be used as implicitly quoted package name" +.ie n .IP """exists $Foo::{Bar::}"" tests existence of a package" 4 +.el .IP "\f(CWexists $Foo::{Bar::}\fR tests existence of a package" 4 +.IX Item "exists $Foo::{Bar::} tests existence of a package" +.IP "Better locale support" 4 +.IX Item "Better locale support" +.IP "Experimental support for 64\-bit platforms" 4 +.IX Item "Experimental support for 64-bit platforms" +.IP "\fBprototype()\fR returns useful results on builtins" 4 +.IX Item "prototype() returns useful results on builtins" +.IP "Extended support for exception handling" 4 +.IX Item "Extended support for exception handling" +.IP "Re-blessing in \fBDESTROY()\fR supported for chaining \fBDESTROY()\fR methods" 4 +.IX Item "Re-blessing in DESTROY() supported for chaining DESTROY() methods" +.ie n .IP "All ""printf"" format conversions are handled internally" 4 +.el .IP "All \f(CWprintf\fR format conversions are handled internally" 4 +.IX Item "All printf format conversions are handled internally" +.ie n .IP "New ""INIT"" keyword" 4 +.el .IP "New \f(CWINIT\fR keyword" 4 +.IX Item "New INIT keyword" +.ie n .IP "New ""lock"" keyword" 4 +.el .IP "New \f(CWlock\fR keyword" 4 +.IX Item "New lock keyword" +.ie n .IP "New ""qr//"" operator" 4 +.el .IP "New \f(CWqr//\fR operator" 4 +.IX Item "New qr// operator" +.ie n .IP """our"" is now a reserved word" 4 +.el .IP "\f(CWour\fR is now a reserved word" 4 +.IX Item "our is now a reserved word" +.IP "Tied arrays are now fully supported" 4 +.IX Item "Tied arrays are now fully supported" +.IP "Tied handles support is better" 4 +.IX Item "Tied handles support is better" +.IP "4th argument to substr" 4 +.IX Item "4th argument to substr" +.IP "Negative LENGTH argument to splice" 4 +.IX Item "Negative LENGTH argument to splice" +.IP "Magic lvalues are now more magical" 4 +.IX Item "Magic lvalues are now more magical" +.IP "<> now reads in records" 4 +.IX Item "<> now reads in records" +.RE +.RS 4 +.RE +.IP "Supported Platforms" 4 +.IX Item "Supported Platforms" +.RS 4 +.IP "New Platforms" 4 +.IX Item "New Platforms" +.IP "Changes in existing support" 4 +.IX Item "Changes in existing support" +.RE +.RS 4 +.RE +.IP "Modules and Pragmata" 4 +.IX Item "Modules and Pragmata" +.RS 4 +.IP "New Modules" 4 +.IX Item "New Modules" +.PD +B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, +ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, +Thread, attrs, fields, re +.IP "Changes in existing modules" 4 +.IX Item "Changes in existing modules" +Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File, +MakeMaker, CPAN, Cwd +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.PD 0 +.IP "Documentation Changes" 4 +.IX Item "Documentation Changes" +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +.PD +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, \f(CW%s:\fR Eval-group in +insecure regular expression, \f(CW%s:\fR Eval-group not allowed, use re 'eval', \f(CW%s:\fR +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 \f(CW%s\fR of type \f(CW%s\fR, Out of memory during ridiculously +large request, Range iterator outside integer range, Recursive inheritance +detected while looking for method '%s' \f(CW%s\fR, Reference found where even-sized +list expected, Undefined value assigned to typeglob, Use of reserved word +"%s" is deprecated, perl: warning: Setting locale failed +.IP "Obsolete Diagnostics" 4 +.IX Item "Obsolete Diagnostics" +Can't \fBmktemp()\fR, Can't write to temp file for \fB\-e\fR: \f(CW%s\fR, Cannot open +temporary file, regexp too big +.IP "Configuration Changes" 4 +.IX Item "Configuration Changes" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perl5004delta \- what's new for perl5.004" +.IX Subsection "perl5004delta - what's new for perl5.004" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "Supported Environments" 4 +.IX Item "Supported Environments" +.IP "Core Changes" 4 +.IX Item "Core Changes" +.RS 4 +.ie n .IP "List assignment to %ENV works" 4 +.el .IP "List assignment to \f(CW%ENV\fR works" 4 +.IX Item "List assignment to %ENV works" +.ie n .IP "Change to ""Can't locate Foo.pm in @INC"" error" 4 +.el .IP "Change to ""Can't locate Foo.pm in \f(CW@INC\fR"" error" 4 +.IX Item "Change to ""Can't locate Foo.pm in @INC"" error" +.IP "Compilation option: Binary compatibility with 5.003" 4 +.IX Item "Compilation option: Binary compatibility with 5.003" +.ie n .IP "$PERL5OPT environment variable" 4 +.el .IP "\f(CW$PERL5OPT\fR environment variable" 4 +.IX Item "$PERL5OPT environment variable" +.IP "Limitations on \fB\-M\fR, \fB\-m\fR, and \fB\-T\fR options" 4 +.IX Item "Limitations on -M, -m, and -T options" +.IP "More precise warnings" 4 +.IX Item "More precise warnings" +.ie n .IP "Deprecated: Inherited ""AUTOLOAD"" for non-methods" 4 +.el .IP "Deprecated: Inherited \f(CWAUTOLOAD\fR for non-methods" 4 +.IX Item "Deprecated: Inherited AUTOLOAD for non-methods" +.ie n .IP "Previously deprecated %OVERLOAD is no longer usable" 4 +.el .IP "Previously deprecated \f(CW%OVERLOAD\fR is no longer usable" 4 +.IX Item "Previously deprecated %OVERLOAD is no longer usable" +.IP "Subroutine arguments created only when they're modified" 4 +.IX Item "Subroutine arguments created only when they're modified" +.ie n .IP "Group vector changeable with $)" 4 +.el .IP "Group vector changeable with \f(CW$)\fR" 4 +.IX Item "Group vector changeable with $)" +.IP "Fixed parsing of $$<digit>, &$<digit>, etc." 4 +.IX Item "Fixed parsing of $$<digit>, &$<digit>, etc." +.IP "Fixed localization of $<digit>, $&, etc." 4 +.IX Item "Fixed localization of $<digit>, $&, etc." +.IP "No resetting of $. on implicit close" 4 +.IX Item "No resetting of $. on implicit close" +.ie n .IP """wantarray"" may return undef" 4 +.el .IP "\f(CWwantarray\fR may return undef" 4 +.IX Item "wantarray may return undef" +.ie n .IP """eval EXPR"" determines value of EXPR in scalar context" 4 +.el .IP "\f(CWeval EXPR\fR determines value of EXPR in scalar context" 4 +.IX Item "eval EXPR determines value of EXPR in scalar context" +.IP "Changes to tainting checks" 4 +.IX Item "Changes to tainting checks" +.PD +No \fBglob()\fR or <*>, No spawning if tainted \f(CW$CDPATH\fR, \f(CW$ENV\fR, \f(CW$BASH_ENV\fR, No +spawning if tainted \f(CW$TERM\fR doesn't look like a terminal name +.IP "New Opcode module and revised Safe module" 4 +.IX Item "New Opcode module and revised Safe module" +.PD 0 +.IP "Embedding improvements" 4 +.IX Item "Embedding improvements" +.IP "Internal change: FileHandle class based on IO::* classes" 4 +.IX Item "Internal change: FileHandle class based on IO::* classes" +.IP "Internal change: PerlIO abstraction interface" 4 +.IX Item "Internal change: PerlIO abstraction interface" +.IP "New and changed syntax" 4 +.IX Item "New and changed syntax" +.PD +\&\f(CW$coderef\fR\->(PARAMS) +.IP "New and changed builtin constants" 4 +.IX Item "New and changed builtin constants" +_\|_PACKAGE_\|_ +.IP "New and changed builtin variables" 4 +.IX Item "New and changed builtin variables" +$^E, $^H, $^M +.IP "New and changed builtin functions" 4 +.IX Item "New and changed builtin functions" +delete on slices, flock, printf and sprintf, keys as an lvalue, \fBmy()\fR in +Control Structures, \fBpack()\fR and \fBunpack()\fR, \fBsysseek()\fR, use VERSION, use Module +VERSION LIST, prototype(FUNCTION), srand, \f(CW$_\fR as Default, \f(CW\*(C`m//gc\*(C'\fR does not +reset search position on failure, \f(CW\*(C`m//x\*(C'\fR ignores whitespace before ?*+{}, +nested \f(CW\*(C`sub{}\*(C'\fR closures work now, formats work right on changing lexicals +.IP "New builtin methods" 4 +.IX Item "New builtin methods" +isa(CLASS), can(METHOD), VERSION( [NEED] ) +.IP "TIEHANDLE now supported" 4 +.IX Item "TIEHANDLE now supported" +TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this +LIST, READLINE this, GETC this, DESTROY this +.IP "Malloc enhancements" 4 +.IX Item "Malloc enhancements" +\&\-DPERL_EMERGENCY_SBRK, \-DPACK_MALLOC, \-DTWO_POT_OPTIMIZE +.IP "Miscellaneous efficiency enhancements" 4 +.IX Item "Miscellaneous efficiency enhancements" +.RE +.RS 4 +.RE +.PD 0 +.IP "Support for More Operating Systems" 4 +.IX Item "Support for More Operating Systems" +.RS 4 +.IP Win32 4 +.IX Item "Win32" +.IP "Plan 9" 4 +.IX Item "Plan 9" +.IP QNX 4 +.IX Item "QNX" +.IP AmigaOS 4 +.IX Item "AmigaOS" +.RE +.RS 4 +.RE +.IP Pragmata 4 +.IX Item "Pragmata" +.PD +use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use +constant NAME => VALUE, use locale, use ops, use vmsish +.IP Modules 4 +.IX Item "Modules" +.RS 4 +.PD 0 +.IP "Required Updates" 4 +.IX Item "Required Updates" +.IP "Installation directories" 4 +.IX Item "Installation directories" +.IP "Module information summary" 4 +.IX Item "Module information summary" +.IP Fcntl 4 +.IX Item "Fcntl" +.IP IO 4 +.IX Item "IO" +.IP Math::Complex 4 +.IX Item "Math::Complex" +.IP Math::Trig 4 +.IX Item "Math::Trig" +.IP DB_File 4 +.IX Item "DB_File" +.IP Net::Ping 4 +.IX Item "Net::Ping" +.IP "Object-oriented overrides for builtin operators" 4 +.IX Item "Object-oriented overrides for builtin operators" +.RE +.RS 4 +.RE +.IP "Utility Changes" 4 +.IX Item "Utility Changes" +.RS 4 +.IP pod2html 4 +.IX Item "pod2html" +.PD +Sends converted HTML to standard output +.IP xsubpp 4 +.IX Item "xsubpp" +\&\f(CW\*(C`void\*(C'\fR XSUBs now default to returning nothing +.RE +.RS 4 +.RE +.IP "C Language API Changes" 4 +.IX Item "C Language API Changes" +\&\f(CW\*(C`gv_fetchmethod\*(C'\fR and \f(CW\*(C`perl_call_sv\*(C'\fR, \f(CW\*(C`perl_eval_pv\*(C'\fR, Extended API for +manipulating hashes +.IP "Documentation Changes" 4 +.IX Item "Documentation Changes" +perldelta, perlfaq, perllocale, perltoot, perlapio, +perlmodlib, perldebug, perlsec +.IP "New Diagnostics" 4 +.IX Item "New Diagnostics" +"my" variable \f(CW%s\fR masks earlier declaration in same scope, \f(CW%s\fR argument is +not a HASH element or slice, Allocation too large: \f(CW%lx\fR, Allocation too +large, Applying \f(CW%s\fR to \f(CW%s\fR 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 \f(CW%s\fR, Can't use bareword ("%s") as \f(CW%s\fR ref while "strict refs" in +use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant +subroutine \f(CW%s\fR redefined, Constant subroutine \f(CW%s\fR undefined, Copy method did +not return a reference, Died, Exiting pseudo-block via \f(CW%s\fR, Identifier too +long, Illegal character \f(CW%s\fR (carriage return), Illegal switch in PERL5OPT: +\&\f(CW%s\fR, Integer overflow in hex number, Integer overflow in octal number, +internal error: glob failed, Invalid conversion in \f(CW%s:\fR "%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 \f(CW%s\fR, panic: frexp, Possible +attempt to put comments in \fBqw()\fR 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 \f(CW%s\fR, Too late for "\fB\-T\fR" +option, untie attempted while \f(CW%d\fR inner references still exist, Unrecognized +character \f(CW%s\fR, Unsupported function fork, Use of "$$<digit>" to mean +"${$}<digit>" is deprecated, Value of \f(CW%s\fR can be "0"; test with \fBdefined()\fR, +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 +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perlbook \- Books about and related to Perl" +.IX Subsection "perlbook - Books about and related to Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The most popular books" 4 +.IX Item "The most popular books" +.PD +\&\fIProgramming Perl\fR (the "Camel Book"):, \fIThe Perl Cookbook\fR (the "Ram +Book"):, \fILearning Perl\fR (the "Llama Book"), \fIIntermediate Perl\fR (the +"Alpaca Book") +.IP References 4 +.IX Item "References" +\&\fIPerl 5 Pocket Reference\fR, \fIPerl Debugger Pocket Reference\fR, \fIRegular +Expression Pocket Reference\fR +.IP Tutorials 4 +.IX Item "Tutorials" +\&\fIBeginning Perl\fR, \fILearning Perl\fR (the "Llama Book"), \fIIntermediate +Perl\fR (the "Alpaca Book"), \fIMastering Perl\fR, \fIEffective Perl Programming\fR +.IP Task-Oriented 4 +.IX Item "Task-Oriented" +\&\fIWriting Perl Modules for CPAN\fR, \fIThe Perl Cookbook\fR, \fIAutomating System +Administration with Perl\fR, \fIReal World SQL Server Administration with +Perl\fR +.IP "Special Topics" 4 +.IX Item "Special Topics" +\&\fIRegular Expressions Cookbook\fR, \fIProgramming the Perl DBI\fR, \fIPerl Best +Practices\fR, \fIHigher-Order Perl\fR, \fIMastering Regular Expressions\fR, +\&\fINetwork Programming with Perl\fR, \fIPerl Template Toolkit\fR, \fIObject +Oriented Perl\fR, \fIData Munging with Perl\fR, \fIMastering Perl/Tk\fR, +\&\fIExtending and Embedding Perl\fR, \fIPro Perl Debugging\fR +.IP "Free (as in beer) books" 4 +.IX Item "Free (as in beer) books" +.PD 0 +.IP "Other interesting, non-Perl books" 4 +.IX Item "Other interesting, non-Perl books" +.PD +\&\fIProgramming Pearls\fR, \fIMore Programming Pearls\fR +.IP "A note on freshness" 4 +.IX Item "A note on freshness" +.PD 0 +.IP "Get your book listed" 4 +.IX Item "Get your book listed" +.RE +.RS 4 +.RE +.PD +.SS "perlcommunity \- a brief overview of the Perl community" +.IX Subsection "perlcommunity - a brief overview of the Perl community" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Where to Find the Community" 4 +.IX Item "Where to Find the Community" +.IP "Mailing Lists and Newsgroups" 4 +.IX Item "Mailing Lists and Newsgroups" +.IP IRC 4 +.IX Item "IRC" +.IP Websites 4 +.IX Item "Websites" +.PD +<https://perl.com/>, <http://blogs.perl.org/>, +<https://perl.theplanetarium.org/>, <https://perlweekly.com/>, +<https://www.perlmonks.org/>, <https://stackoverflow.com/> +.IP "User Groups" 4 +.IX Item "User Groups" +.PD 0 +.IP Workshops 4 +.IX Item "Workshops" +.IP Hackathons 4 +.IX Item "Hackathons" +.IP Conventions 4 +.IX Item "Conventions" +.PD +The Perl Conference, OSCON +.IP "Calendar of Perl Events" 4 +.IX Item "Calendar of Perl Events" +.RE +.RS 4 +.RE +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perldoc \- Look up Perl documentation in Pod format." +.IX Subsection "perldoc - Look up Perl documentation in Pod format." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.PD +\&\fB\-h\fR, \fB\-D\fR, \fB\-t\fR, \fB\-u\fR, \fB\-m\fR \fImodule\fR, \fB\-l\fR, \fB\-U\fR, \fB\-F\fR, \fB\-f\fR +\&\fIperlfunc\fR, \fB\-q\fR \fIperlfaq-search-regexp\fR, \fB\-a\fR \fIperlapifunc\fR, \fB\-v\fR +\&\fIperlvar\fR, \fB\-T\fR, \fB\-d\fR \fIdestination-filename\fR, \fB\-o\fR +\&\fIoutput-formatname\fR, \fB\-M\fR \fImodule-name\fR, \fB\-w\fR \fIoption:value\fR or \fB\-w\fR +\&\fIoption\fR, \fB\-X\fR, \fB\-L\fR \fIlanguage_code\fR, +\&\fBPageName|ModuleName|ProgramName|URL\fR, \fB\-n\fR \fIsome-formatter\fR, \fB\-r\fR, +\&\fB\-i\fR, \fB\-V\fR +.IP SECURITY 4 +.IX Item "SECURITY" +.PD 0 +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.IP CHANGES 4 +.IX Item "CHANGES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlexperiment \- A listing of experimental features in Perl" +.IX Subsection "perlexperiment - A listing of experimental features in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Current experiments" 4 +.IX Item "Current experiments" +.PD +Smart match (\f(CW\*(C`~~\*(C'\fR), Pluggable keywords, Aliasing via reference, The +"const" attribute, use re 'strict';, Declaring a reference to a variable, +There is an \f(CW\*(C`installhtml\*(C'\fR target in the Makefile, (Limited) +Variable-length look-behind, Unicode private use character hooks, Unicode +property wildcards, try/catch control structure, Use of \f(CW@_\fR within +subroutine signatures, for loop with multiple iteration variables, The +builtin namespace, The defer block modifier, Extra paired delimiters for +quote-like operators +.IP "Accepted features" 4 +.IX Item "Accepted features" +64\-bit support, die accepts a reference, DB module, Weak references, +Internal file glob, \fBfork()\fR emulation, \-Dusemultiplicity \-Duseithreads, +Support for long doubles, The \f(CW\*(C`\eN\*(C'\fR regex character class, \f(CW\*(C`(?{code})\*(C'\fR and +\&\f(CW\*(C`(??{ code })\*(C'\fR, Linux abstract Unix domain sockets, Lvalue subroutines, +Backtracking control verbs, The \f(CW\*(C`:pop\*(C'\fR IO pseudolayer, \f(CW\*(C`\es\*(C'\fR in regexp +matches vertical tab, Postfix dereference syntax, Lexical subroutines, +String\- and number-specific bitwise operators, Alphabetic assertions, +Script runs, The infix \f(CW\*(C`isa\*(C'\fR operator, Subroutine signatures, Regular +Expression Set Operations +.IP "Removed features" 4 +.IX Item "Removed features" +5.005\-style threading, perlcc, The pseudo-hash data type, GetOpt::Long +Options can now take multiple values at once (experimental), Assertions, +Test::Harness::Straps, \f(CW\*(C`legacy\*(C'\fR, Lexical \f(CW$_\fR, Array and hash container +functions accept references, \f(CW\*(C`our\*(C'\fR can have an experimental optional +attribute \f(CW\*(C`unique\*(C'\fR, The \f(CW\*(C`:win32\*(C'\fR IO pseudolayer +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "perlartistic \- the Perl Artistic License" +.IX Subsection "perlartistic - the Perl Artistic License" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "The ""Artistic License""" 4 +.IX Item "The ""Artistic License""" +.RS 4 +.IP Preamble 4 +.IX Item "Preamble" +.IP Definitions 4 +.IX Item "Definitions" +.PD +"Package", "Standard Version", "Copyright Holder", "You", "Reasonable +copying fee", "Freely Available" +.IP Conditions 4 +.IX Item "Conditions" +a), b), c), d), a), b), c), d) +.RE +.RS 4 +.RE +.SS "perlgpl \- the GNU General Public License, version 1" +.IX Subsection "perlgpl - the GNU General Public License, version 1" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "GNU GENERAL PUBLIC LICENSE" 4 +.IX Item "GNU GENERAL PUBLIC LICENSE" +.PD +.SS "perlaix \- Perl version 5 on IBM AIX (UNIX) systems" +.IX Subsection "perlaix - Perl version 5 on IBM AIX (UNIX) systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Compiling Perl 5 on AIX" 4 +.IX Item "Compiling Perl 5 on AIX" +.IP "Supported Compilers" 4 +.IX Item "Supported Compilers" +.IP "Incompatibility with AIX Toolbox lib gdbm" 4 +.IX Item "Incompatibility with AIX Toolbox lib gdbm" +.IP "Perl 5 was successfully compiled and tested on:" 4 +.IX Item "Perl 5 was successfully compiled and tested on:" +.IP "Building Dynamic Extensions on AIX" 4 +.IX Item "Building Dynamic Extensions on AIX" +.IP "Using Large Files with Perl" 4 +.IX Item "Using Large Files with Perl" +.IP "Threaded Perl" 4 +.IX Item "Threaded Perl" +.IP "64\-bit Perl" 4 +.IX Item "64-bit Perl" +.IP "Long doubles" 4 +.IX Item "Long doubles" +.IP "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/32\-bit)" 4 +.IX Item "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/32-bit)" +.IP "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (32\-bit)" 4 +.IX Item "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (32-bit)" +.IP "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/64\-bit)" 4 +.IX Item "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/64-bit)" +.IP "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (64\-bit)" 4 +.IX Item "Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (64-bit)" +.IP "Compiling Perl 5 on AIX 7.1.0" 4 +.IX Item "Compiling Perl 5 on AIX 7.1.0" +.IP "Compiling Perl 5 on older AIX versions up to 4.3.3" 4 +.IX Item "Compiling Perl 5 on older AIX versions up to 4.3.3" +.IP "OS level" 4 +.IX Item "OS level" +.IP "Building Dynamic Extensions on AIX < 5L" 4 +.IX Item "Building Dynamic Extensions on AIX < 5L" +.IP "The IBM ANSI C Compiler" 4 +.IX Item "The IBM ANSI C Compiler" +.IP "The usenm option" 4 +.IX Item "The usenm option" +.IP "Using GNU's gcc for building Perl" 4 +.IX Item "Using GNU's gcc for building Perl" +.IP "Using Large Files with Perl < 5L" 4 +.IX Item "Using Large Files with Perl < 5L" +.IP "Threaded Perl < 5L" 4 +.IX Item "Threaded Perl < 5L" +.IP "64\-bit Perl < 5L" 4 +.IX Item "64-bit Perl < 5L" +.IP "AIX 4.2 and extensions using C++ with statics" 4 +.IX Item "AIX 4.2 and extensions using C++ with statics" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "perlamiga \- Perl under AmigaOS 4.1" +.IX Subsection "perlamiga - Perl under AmigaOS 4.1" +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Prerequisites for running Perl 5.22.1 under AmigaOS 4.1" 4 +.IX Item "Prerequisites for running Perl 5.22.1 under AmigaOS 4.1" +.PD +\&\fBAmigaOS 4.1 update 6 with all updates applied as of 9th October 2013\fR, +\&\fBnewlib.library version 53.28 or greater\fR, \fBAmigaOS SDK\fR, \fBabc-shell\fR +.IP "Starting Perl programs under AmigaOS 4.1" 4 +.IX Item "Starting Perl programs under AmigaOS 4.1" +.PD 0 +.IP "Limitations of Perl under AmigaOS 4.1" 4 +.IX Item "Limitations of Perl under AmigaOS 4.1" +.PD +\&\fBNested Piped programs can crash when run from older abc-shells\fR, +\&\fBIncorrect or unexpected command line unescaping\fR, \fBStarting subprocesses +via open has limitations\fR, If you find any other limitations or bugs then +let me know +.RE +.RS 4 +.RE +.IP INSTALLATION 4 +.IX Item "INSTALLATION" +.PD 0 +.IP "Amiga Specific Modules" 4 +.IX Item "Amiga Specific Modules" +.RS 4 +.IP Amiga::ARexx 4 +.IX Item "Amiga::ARexx" +.IP Amiga::Exec 4 +.IX Item "Amiga::Exec" +.RE +.RS 4 +.RE +.IP BUILDING 4 +.IX Item "BUILDING" +.IP CHANGES 4 +.IX Item "CHANGES" +.PD +\&\fBAugust 2015\fR, Port to Perl 5.22, Add handling of NIL: to \fBafstat()\fR, Fix +inheritance of environment variables by subprocesses, Fix exec, and exit in +"forked" subprocesses, Fix issue with newlib's unlink, which could cause +infinite loops, Add \fBflock()\fR emulation using IDOS\->LockRecord thanks to Tony +Cook for the suggestion, Fix issue where kill was using the wrong kind of +process ID, \fB27th November 2013\fR, Create new installation system based on +installperl links and Amiga protection bits now set correctly, Pod now +defaults to text, File::Spec should now recognise an Amiga style absolute +path as well as an Unix style one. Relative paths must always be Unix +style, \fB20th November 2013\fR, Configured to use SDK:Local/C/perl to start +standard scripts, Added Amiga::Exec module with support for \fBWait()\fR and +AmigaOS signal numbers, \fB10th October 13\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "perlandroid \- Perl under Android" +.IX Subsection "perlandroid - Perl under Android" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Cross-compilation 4 +.IX Item "Cross-compilation" +.RS 4 +.IP "Get the Android Native Development Kit (NDK)" 4 +.IX Item "Get the Android Native Development Kit (NDK)" +.IP "Determine the architecture you'll be cross-compiling for" 4 +.IX Item "Determine the architecture you'll be cross-compiling for" +.IP "Set up a standalone toolchain" 4 +.IX Item "Set up a standalone toolchain" +.IP "adb or ssh?" 4 +.IX Item "adb or ssh?" +.IP "Configure and beyond" 4 +.IX Item "Configure and beyond" +.RE +.RS 4 +.RE +.IP "Native Builds" 4 +.IX Item "Native Builds" +.RS 4 +.IP CCTools 4 +.IX Item "CCTools" +.IP Termux 4 +.IX Item "Termux" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlbs2000 \- building and installing Perl for BS2000." +.IX Subsection "perlbs2000 - building and installing Perl for BS2000." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "gzip on BS2000" 4 +.IX Item "gzip on BS2000" +.IP "bison on BS2000" 4 +.IX Item "bison on BS2000" +.IP "Unpacking Perl Distribution on BS2000" 4 +.IX Item "Unpacking Perl Distribution on BS2000" +.IP "Compiling Perl on BS2000" 4 +.IX Item "Compiling Perl on BS2000" +.IP "Testing Perl on BS2000" 4 +.IX Item "Testing Perl on BS2000" +.IP "Installing Perl on BS2000" 4 +.IX Item "Installing Perl on BS2000" +.IP "Using Perl in the Posix-Shell of BS2000" 4 +.IX Item "Using Perl in the Posix-Shell of BS2000" +.IP "Using Perl in ""native"" BS2000" 4 +.IX Item "Using Perl in ""native"" BS2000" +.IP "Floating point anomalies on BS2000" 4 +.IX Item "Floating point anomalies on BS2000" +.IP "Using PerlIO and different encodings on ASCII and EBCDIC partitions" 4 +.IX Item "Using PerlIO and different encodings on ASCII and EBCDIC partitions" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP "Mailing list" 4 +.IX Item "Mailing list" +.RE +.RS 4 +.RE +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perlcygwin \- Perl for Cygwin" +.IX Subsection "perlcygwin - Perl for Cygwin" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "PREREQUISITES FOR COMPILING PERL ON CYGWIN" 4 +.IX Item "PREREQUISITES FOR COMPILING PERL ON CYGWIN" +.RS 4 +.IP "Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it)" 4 +.IX Item "Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it)" +.IP "Cygwin Configuration" 4 +.IX Item "Cygwin Configuration" +.PD +\&\f(CW\*(C`PATH\*(C'\fR, \fInroff\fR +.RE +.RS 4 +.RE +.IP "CONFIGURE PERL ON CYGWIN" 4 +.IX Item "CONFIGURE PERL ON CYGWIN" +.RS 4 +.PD 0 +.IP "Stripping Perl Binaries on Cygwin" 4 +.IX Item "Stripping Perl Binaries on Cygwin" +.IP "Optional Libraries for Perl on Cygwin" 4 +.IX Item "Optional Libraries for Perl on Cygwin" +.PD +\&\f(CW\*(C`\-lcrypt\*(C'\fR, \f(CW\*(C`\-lgdbm_compat\*(C'\fR (\f(CW\*(C`use GDBM_File\*(C'\fR), \f(CW\*(C`\-ldb\*(C'\fR (\f(CW\*(C`use DB_File\*(C'\fR), +\&\f(CW\*(C`cygserver\*(C'\fR (\f(CW\*(C`use IPC::SysV\*(C'\fR), \f(CW\*(C`\-lutil\*(C'\fR +.IP "Configure-time Options for Perl on Cygwin" 4 +.IX Item "Configure-time Options for Perl on Cygwin" +\&\f(CW\*(C`\-Uusedl\*(C'\fR, \f(CW\*(C`\-Dusemymalloc\*(C'\fR, \f(CW\*(C`\-Uuseperlio\*(C'\fR, \f(CW\*(C`\-Dusemultiplicity\*(C'\fR, +\&\f(CW\*(C`\-Uuse64bitint\*(C'\fR, \f(CW\*(C`\-Duselongdouble\*(C'\fR, \f(CW\*(C`\-Uuseithreads\*(C'\fR, \f(CW\*(C`\-Duselargefiles\*(C'\fR, +\&\f(CW\*(C`\-Dmksymlinks\*(C'\fR +.RE +.RS 4 +.RE +.IP "MAKE ON CYGWIN" 4 +.IX Item "MAKE ON CYGWIN" +.PD 0 +.IP "TEST ON CYGWIN" 4 +.IX Item "TEST ON CYGWIN" +.RS 4 +.IP "File Permissions on Cygwin" 4 +.IX Item "File Permissions on Cygwin" +.IP "NDBM_File and ODBM_File do not work on FAT filesystems" 4 +.IX Item "NDBM_File and ODBM_File do not work on FAT filesystems" +.ie n .IP "fork() failures in io_* tests" 4 +.el .IP "\f(CWfork()\fR failures in io_* tests" 4 +.IX Item "fork() failures in io_* tests" +.RE +.RS 4 +.RE +.IP "Specific features of the Cygwin port" 4 +.IX Item "Specific features of the Cygwin port" +.RS 4 +.IP "Script Portability on Cygwin" 4 +.IX Item "Script Portability on Cygwin" +.PD +Pathnames, Text/Binary, PerlIO, \fI.exe\fR, Cygwin vs. Windows process ids, +Cygwin vs. Windows errors, rebase errors on fork or system, Miscellaneous +.IP "Prebuilt methods:" 4 +.IX Item "Prebuilt methods:" +\&\f(CW\*(C`Cwd::cwd\*(C'\fR, \f(CW\*(C`Cygwin::pid_to_winpid\*(C'\fR, \f(CW\*(C`Cygwin::winpid_to_pid\*(C'\fR, +\&\f(CW\*(C`Cygwin::win_to_posix_path\*(C'\fR, \f(CW\*(C`Cygwin::posix_to_win_path\*(C'\fR, +\&\f(CWCygwin::mount_table()\fR, \f(CW\*(C`Cygwin::mount_flags\*(C'\fR, \f(CW\*(C`Cygwin::is_binmount\*(C'\fR, +\&\f(CW\*(C`Cygwin::sync_winenv\*(C'\fR +.RE +.RS 4 +.RE +.IP "INSTALL PERL ON CYGWIN" 4 +.IX Item "INSTALL PERL ON CYGWIN" +.PD 0 +.IP "MANIFEST ON CYGWIN" 4 +.IX Item "MANIFEST ON CYGWIN" +.PD +Documentation, Build, Configure, Make, Install, Tests, Compiled Perl +Source, Compiled Module Source, Perl Modules/Scripts, Perl Module Tests +.IP "BUGS ON CYGWIN" 4 +.IX Item "BUGS ON CYGWIN" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perlfreebsd \- Perl version 5 on FreeBSD systems" +.IX Subsection "perlfreebsd - Perl version 5 on FreeBSD systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "FreeBSD core dumps from readdir_r with ithreads" 4 +.IX Item "FreeBSD core dumps from readdir_r with ithreads" +.ie n .IP "$^X doesn't always contain a full path in FreeBSD" 4 +.el .IP "\f(CW$^X\fR doesn't always contain a full path in FreeBSD" 4 +.IX Item "$^X doesn't always contain a full path in FreeBSD" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlhaiku \- Perl version 5.10+ on Haiku" +.IX Subsection "perlhaiku - Perl version 5.10+ on Haiku" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "BUILD AND INSTALL" 4 +.IX Item "BUILD AND INSTALL" +.IP "KNOWN PROBLEMS" 4 +.IX Item "KNOWN PROBLEMS" +.IP CONTACT 4 +.IX Item "CONTACT" +.PD +.SS "perlhpux \- Perl version 5 on Hewlett-Packard Unix (HP-UX) systems" +.IX Subsection "perlhpux - Perl version 5 on Hewlett-Packard Unix (HP-UX) systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Using perl as shipped with HP-UX" 4 +.IX Item "Using perl as shipped with HP-UX" +.IP "Using perl from HP's porting centre" 4 +.IX Item "Using perl from HP's porting centre" +.IP "Other prebuilt perl binaries" 4 +.IX Item "Other prebuilt perl binaries" +.IP "Compiling Perl 5 on HP-UX" 4 +.IX Item "Compiling Perl 5 on HP-UX" +.IP PA-RISC 4 +.IX Item "PA-RISC" +.IP "PA-RISC 1.0" 4 +.IX Item "PA-RISC 1.0" +.IP "PA-RISC 1.1" 4 +.IX Item "PA-RISC 1.1" +.IP "PA-RISC 2.0" 4 +.IX Item "PA-RISC 2.0" +.IP "Portability Between PA-RISC Versions" 4 +.IX Item "Portability Between PA-RISC Versions" +.IP "Itanium Processor Family (IPF) and HP-UX" 4 +.IX Item "Itanium Processor Family (IPF) and HP-UX" +.IP "Itanium, Itanium 2 & Madison 6" 4 +.IX Item "Itanium, Itanium 2 & Madison 6" +.IP "HP-UX versions" 4 +.IX Item "HP-UX versions" +.IP "Building Dynamic Extensions on HP-UX" 4 +.IX Item "Building Dynamic Extensions on HP-UX" +.IP "The HP ANSI C Compiler" 4 +.IX Item "The HP ANSI C Compiler" +.IP "The GNU C Compiler" 4 +.IX Item "The GNU C Compiler" +.IP "Using Large Files with Perl on HP-UX" 4 +.IX Item "Using Large Files with Perl on HP-UX" +.IP "Threaded Perl on HP-UX" 4 +.IX Item "Threaded Perl on HP-UX" +.IP "64\-bit Perl on HP-UX" 4 +.IX Item "64-bit Perl on HP-UX" +.IP "Oracle on HP-UX" 4 +.IX Item "Oracle on HP-UX" +.IP "GDBM and Threads on HP-UX" 4 +.IX Item "GDBM and Threads on HP-UX" +.IP "NFS filesystems and \fButime\fR\|(2) on HP-UX" 4 +.IX Item "NFS filesystems and utime on HP-UX" +.IP "HP-UX Kernel Parameters (maxdsiz) for Compiling Perl" 4 +.IX Item "HP-UX Kernel Parameters (maxdsiz) for Compiling Perl" +.RE +.RS 4 +.RE +.IP "nss_delete core dump from op/pwent or op/grent" 4 +.IX Item "nss_delete core dump from op/pwent or op/grent" +.IP "error: pasting "")"" and ""l"" does not give a valid preprocessing token" 4 +.IX Item "error: pasting "")"" and ""l"" does not give a valid preprocessing token" +.IP "Redeclaration of ""sendpath"" with a different storage class specifier" 4 +.IX Item "Redeclaration of ""sendpath"" with a different storage class specifier" +.IP Miscellaneous 4 +.IX Item "Miscellaneous" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlhurd \- Perl version 5 on Hurd" +.IX Subsection "perlhurd - Perl version 5 on Hurd" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Known Problems with Perl on Hurd" 4 +.IX Item "Known Problems with Perl on Hurd" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlirix \- Perl version 5 on Irix systems" +.IX Subsection "perlirix - Perl version 5 on Irix systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Building 32\-bit Perl in Irix" 4 +.IX Item "Building 32-bit Perl in Irix" +.IP "Building 64\-bit Perl in Irix" 4 +.IX Item "Building 64-bit Perl in Irix" +.IP "About Compiler Versions of Irix" 4 +.IX Item "About Compiler Versions of Irix" +.IP "Linker Problems in Irix" 4 +.IX Item "Linker Problems in Irix" +.IP "Malloc in Irix" 4 +.IX Item "Malloc in Irix" +.IP "Building with threads in Irix" 4 +.IX Item "Building with threads in Irix" +.IP "Irix 5.3" 4 +.IX Item "Irix 5.3" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perllinux \- Perl version 5 on Linux systems" +.IX Subsection "perllinux - Perl version 5 on Linux systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Deploying Perl on Linux" 4 +.IX Item "Deploying Perl on Linux" +.IP "Experimental Support for Sun Studio Compilers for Linux OS" 4 +.IX Item "Experimental Support for Sun Studio Compilers for Linux OS" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlmacosx \- Perl under Mac OS X" +.IX Subsection "perlmacosx - Perl under Mac OS X" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Installation Prefix" 4 +.IX Item "Installation Prefix" +.IP "SDK support" 4 +.IX Item "SDK support" +.IP "Universal Binary support" 4 +.IX Item "Universal Binary support" +.IP "64\-bit PPC support" 4 +.IX Item "64-bit PPC support" +.IP "libperl and Prebinding" 4 +.IX Item "libperl and Prebinding" +.IP "Updating Apple's Perl" 4 +.IX Item "Updating Apple's Perl" +.IP "Known problems" 4 +.IX Item "Known problems" +.IP Cocoa 4 +.IX Item "Cocoa" +.RE +.RS 4 +.RE +.IP "Starting From Scratch" 4 +.IX Item "Starting From Scratch" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP DATE 4 +.IX Item "DATE" +.PD +.SS "perlopenbsd \- Perl version 5 on OpenBSD systems" +.IX Subsection "perlopenbsd - Perl version 5 on OpenBSD systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "OpenBSD core dumps from getprotobyname_r and getservbyname_r with ithreads" 4 +.IX Item "OpenBSD core dumps from getprotobyname_r and getservbyname_r with ithreads" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlos2 \- Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT." +.IX Subsection "perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Target 4 +.IX Item "Target" +.IP "Other OSes" 4 +.IX Item "Other OSes" +.IP Prerequisites 4 +.IX Item "Prerequisites" +.PD +EMX, RSX, HPFS, pdksh +.IP "Starting Perl programs under OS/2 (and DOS and...)" 4 +.IX Item "Starting Perl programs under OS/2 (and DOS and...)" +.PD 0 +.IP "Starting OS/2 (and DOS) programs under Perl" 4 +.IX Item "Starting OS/2 (and DOS) programs under Perl" +.RE +.RS 4 +.RE +.IP "Frequently asked questions" 4 +.IX Item "Frequently asked questions" +.RS 4 +.IP """It does not work""" 4 +.IX Item """It does not work""" +.IP "I cannot run external programs" 4 +.IX Item "I cannot run external programs" +.IP "I cannot embed perl into my program, or use \fIperl.dll\fR from my program." 4 +.IX Item "I cannot embed perl into my program, or use perl.dll from my program." +.PD +Is your program EMX-compiled with \f(CW\*(C`\-Zmt \-Zcrtdll\*(C'\fR?, Did you use +ExtUtils::Embed? +.ie n .IP "\`\` and pipe\-""open"" do not work under DOS." 4 +.el .IP "\f(CW\`\`\fR and pipe\-\f(CWopen\fR do not work under DOS." 4 +.IX Item " and pipe-open do not work under DOS." +.PD 0 +.ie n .IP "Cannot start ""find.exe ""pattern"" file""" 4 +.el .IP "Cannot start \f(CWfind.exe ""pattern"" file\fR" 4 +.IX Item "Cannot start find.exe ""pattern"" file" +.RE +.RS 4 +.RE +.IP INSTALLATION 4 +.IX Item "INSTALLATION" +.RS 4 +.IP "Automatic binary installation" 4 +.IX Item "Automatic binary installation" +.PD +\&\f(CW\*(C`PERL_BADLANG\*(C'\fR, \f(CW\*(C`PERL_BADFREE\*(C'\fR, \fIConfig.pm\fR +.IP "Manual binary installation" 4 +.IX 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 \fI.INF\fR format, Pdksh +.IP \fBWarning\fR 4 +.IX Item "Warning" +.RE +.RS 4 +.RE +.PD 0 +.IP "Accessing documentation" 4 +.IX Item "Accessing documentation" +.RS 4 +.IP "OS/2 \fI.INF\fR file" 4 +.IX Item "OS/2 .INF file" +.IP "Plain text" 4 +.IX Item "Plain text" +.IP Manpages 4 +.IX Item "Manpages" +.IP HTML 4 +.IX Item "HTML" +.ie n .IP "GNU ""info"" files" 4 +.el .IP "GNU \f(CWinfo\fR files" 4 +.IX Item "GNU info files" +.IP "\fIPDF\fR files" 4 +.IX Item "PDF files" +.ie n .IP """LaTeX"" docs" 4 +.el .IP "\f(CWLaTeX\fR docs" 4 +.IX Item "LaTeX docs" +.RE +.RS 4 +.RE +.IP BUILD 4 +.IX Item "BUILD" +.RS 4 +.IP "The short story" 4 +.IX Item "The short story" +.IP Prerequisites 4 +.IX Item "Prerequisites" +.IP "Getting perl source" 4 +.IX Item "Getting perl source" +.IP "Application of the patches" 4 +.IX Item "Application of the patches" +.IP Hand-editing 4 +.IX Item "Hand-editing" +.IP Making 4 +.IX Item "Making" +.IP Testing 4 +.IX Item "Testing" +.PD +A lot of \f(CW\*(C`bad free\*(C'\fR, Process terminated by SIGTERM/SIGINT, \fIop/fs.t\fR, +18, 25, \fIop/stat.t\fR +.IP "Installing the built perl" 4 +.IX Item "Installing the built perl" +.PD 0 +.ie n .IP """a.out""\-style build" 4 +.el .IP "\f(CWa.out\fR\-style build" 4 +.IX Item "a.out-style build" +.RE +.RS 4 +.RE +.IP "Building a binary distribution" 4 +.IX Item "Building a binary distribution" +.IP "Building custom \fI.EXE\fR files" 4 +.IX Item "Building custom .EXE files" +.RS 4 +.IP "Making executables with a custom collection of statically loaded extensions" 4 +.IX Item "Making executables with a custom collection of statically loaded extensions" +.IP "Making executables with a custom search-paths" 4 +.IX Item "Making executables with a custom search-paths" +.RE +.RS 4 +.RE +.IP "Build FAQ" 4 +.IX Item "Build FAQ" +.RS 4 +.ie n .IP "Some ""/"" became ""\e"" in pdksh." 4 +.el .IP "Some \f(CW/\fR became \f(CW\e\fR in pdksh." 4 +.IX Item "Some / became in pdksh." +.ie n .IP "\*(Aqerrno\*(Aq \- unresolved external" 4 +.el .IP "\f(CW\*(Aqerrno\*(Aq\fR \- unresolved external" 4 +.IX Item "errno - unresolved external" +.IP "Problems with tr or sed" 4 +.IX Item "Problems with tr or sed" +.IP "Some problem (forget which ;\-)" 4 +.IX Item "Some problem (forget which ;-)" +.IP "Library ... not found" 4 +.IX Item "Library ... not found" +.IP "Segfault in make" 4 +.IX Item "Segfault in make" +.IP "op/sprintf test failure" 4 +.IX Item "op/sprintf test failure" +.RE +.RS 4 +.RE +.IP "Specific (mis)features of OS/2 port" 4 +.IX Item "Specific (mis)features of OS/2 port" +.RS 4 +.ie n .IP """setpriority"", ""getpriority""" 4 +.el .IP "\f(CWsetpriority\fR, \f(CWgetpriority\fR" 4 +.IX Item "setpriority, getpriority" +.ie n .IP system() 4 +.el .IP \f(CWsystem()\fR 4 +.IX Item "system()" +.ie n .IP """extproc"" on the first line" 4 +.el .IP "\f(CWextproc\fR on the first line" 4 +.IX Item "extproc on the first line" +.IP "Additional modules:" 4 +.IX Item "Additional modules:" +.IP "Prebuilt methods:" 4 +.IX Item "Prebuilt methods:" +.PD +\&\f(CW\*(C`File::Copy::syscopy\*(C'\fR, \f(CW\*(C`DynaLoader::mod2fname\*(C'\fR, \f(CWCwd::current_drive()\fR, + \f(CWCwd::sys_chdir(name)\fR, \f(CWCwd::change_drive(name)\fR, +\&\f(CWCwd::sys_is_absolute(name)\fR, \f(CWCwd::sys_is_rooted(name)\fR, +\&\f(CWCwd::sys_is_relative(name)\fR, \f(CWCwd::sys_cwd(name)\fR, +\&\f(CW\*(C`Cwd::sys_abspath(name, dir)\*(C'\fR, \f(CWCwd::extLibpath([type])\fR, +\&\f(CW\*(C`Cwd::extLibpath_set( path [, type ] )\*(C'\fR, +\&\f(CW\*(C`OS2::Error(do_harderror,do_exception)\*(C'\fR, \f(CWOS2::Errors2Drive(drive)\fR, +\&\fBOS2::SysInfo()\fR, \fBOS2::BootDrive()\fR, \f(CWOS2::MorphPM(serve)\fR, +\&\f(CWOS2::UnMorphPM(serve)\fR, \f(CWOS2::Serve_Messages(force)\fR, +\&\f(CW\*(C`OS2::Process_Messages(force [, cnt])\*(C'\fR, \f(CW\*(C`OS2::_control87(new,mask)\*(C'\fR, +\&\fBOS2::get_control87()\fR, \f(CW\*(C`OS2::set_control87_em(new=MCW_EM,mask=MCW_EM)\*(C'\fR, +\&\f(CW\*(C`OS2::DLLname([how [, \e&xsub]])\*(C'\fR +.IP "Prebuilt variables:" 4 +.IX Item "Prebuilt variables:" +\&\f(CW$OS2::emx_rev\fR, \f(CW$OS2::emx_env\fR, \f(CW$OS2::os_ver\fR, \f(CW$OS2::is_aout\fR, \f(CW$OS2::can_fork\fR, +\&\f(CW$OS2::nsyserror\fR +.IP Misfeatures 4 +.IX Item "Misfeatures" +.PD 0 +.IP Modifications 4 +.IX Item "Modifications" +.PD +\&\f(CW\*(C`popen\*(C'\fR, \f(CW\*(C`tmpnam\*(C'\fR, \f(CW\*(C`tmpfile\*(C'\fR, \f(CW\*(C`ctermid\*(C'\fR, \f(CW\*(C`stat\*(C'\fR, \f(CW\*(C`mkdir\*(C'\fR, \f(CW\*(C`rmdir\*(C'\fR, +\&\f(CW\*(C`flock\*(C'\fR +.IP "Identifying DLLs" 4 +.IX Item "Identifying DLLs" +.PD 0 +.IP "Centralized management of resources" 4 +.IX Item "Centralized management of resources" +.PD +\&\f(CW\*(C`HAB\*(C'\fR, \f(CW\*(C`HMQ\*(C'\fR, Treating errors reported by OS/2 API, +\&\f(CWCheckOSError(expr)\fR, \f(CWCheckWinError(expr)\fR, \f(CWSaveWinError(expr)\fR, +\&\f(CW\*(C`SaveCroakWinError(expr,die,name1,name2)\*(C'\fR, \f(CW\*(C`WinError_2_Perl_rc\*(C'\fR, +\&\f(CW\*(C`FillWinError\*(C'\fR, \f(CWFillOSError(rc)\fR, Loading DLLs and ordinals in DLLs +.RE +.RS 4 +.RE +.IP "Perl flavors" 4 +.IX Item "Perl flavors" +.RS 4 +.PD 0 +.IP \fIperl.exe\fR 4 +.IX Item "perl.exe" +.IP \fIperl_.exe\fR 4 +.IX Item "perl_.exe" +.IP \fIperl_\|_.exe\fR 4 +.IX Item "perl__.exe" +.IP \fIperl_\|_\|_.exe\fR 4 +.IX Item "perl___.exe" +.IP "Why strange names?" 4 +.IX Item "Why strange names?" +.IP "Why dynamic linking?" 4 +.IX Item "Why dynamic linking?" +.IP "Why chimera build?" 4 +.IX Item "Why chimera build?" +.RE +.RS 4 +.RE +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.RS 4 +.ie n .IP """PERLLIB_PREFIX""" 4 +.el .IP \f(CWPERLLIB_PREFIX\fR 4 +.IX Item "PERLLIB_PREFIX" +.ie n .IP """PERL_BADLANG""" 4 +.el .IP \f(CWPERL_BADLANG\fR 4 +.IX Item "PERL_BADLANG" +.ie n .IP """PERL_BADFREE""" 4 +.el .IP \f(CWPERL_BADFREE\fR 4 +.IX Item "PERL_BADFREE" +.ie n .IP """PERL_SH_DIR""" 4 +.el .IP \f(CWPERL_SH_DIR\fR 4 +.IX Item "PERL_SH_DIR" +.ie n .IP """USE_PERL_FLOCK""" 4 +.el .IP \f(CWUSE_PERL_FLOCK\fR 4 +.IX Item "USE_PERL_FLOCK" +.ie n .IP """TMP"" or ""TEMP""" 4 +.el .IP "\f(CWTMP\fR or \f(CWTEMP\fR" 4 +.IX Item "TMP or TEMP" +.RE +.RS 4 +.RE +.IP Evolution 4 +.IX Item "Evolution" +.RS 4 +.IP "Text-mode filehandles" 4 +.IX Item "Text-mode filehandles" +.IP Priorities 4 +.IX Item "Priorities" +.IP "DLL name mangling: pre 5.6.2" 4 +.IX Item "DLL name mangling: pre 5.6.2" +.IP "DLL name mangling: 5.6.2 and beyond" 4 +.IX Item "DLL name mangling: 5.6.2 and beyond" +.PD +Global DLLs, specific DLLs, \f(CW\*(C`BEGINLIBPATH\*(C'\fR and \f(CW\*(C`ENDLIBPATH\*(C'\fR, \fI.\fR from +\&\f(CW\*(C`LIBPATH\*(C'\fR +.IP "DLL forwarder generation" 4 +.IX Item "DLL forwarder generation" +.PD 0 +.IP Threading 4 +.IX Item "Threading" +.IP "Calls to external programs" 4 +.IX Item "Calls to external programs" +.IP "Memory allocation" 4 +.IX Item "Memory allocation" +.IP Threads 4 +.IX Item "Threads" +.PD +\&\f(CW\*(C`COND_WAIT\*(C'\fR, \fIos2.c\fR +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "perlos390 \- building and installing Perl for z/OS (previously called OS/390)" +.IX Subsection "perlos390 - building and installing Perl for z/OS (previously called OS/390)" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Tools 4 +.IX Item "Tools" +.IP "Building a 64\-bit Dynamic ASCII Perl" 4 +.IX Item "Building a 64-bit Dynamic ASCII Perl" +.IP "Building a 64\-bit Dynamic EBCDIC Perl" 4 +.IX Item "Building a 64-bit Dynamic EBCDIC Perl" +.IP "Setup and utilities for Perl on OS/390" 4 +.IX Item "Setup and utilities for Perl on OS/390" +.IP "Useful files for trouble-shooting" 4 +.IX Item "Useful files for trouble-shooting" +.IP "Build Anomalies with Perl on OS/390" 4 +.IX Item "Build Anomalies with Perl on OS/390" +.IP "Testing Anomalies with Perl on OS/390" 4 +.IX Item "Testing Anomalies with Perl on OS/390" +.IP "Usage Hints for Perl on z/OS" 4 +.IX Item "Usage Hints for Perl on z/OS" +.IP "Modules and Extensions for Perl on z/OS (Static Only)" 4 +.IX Item "Modules and Extensions for Perl on z/OS (Static Only)" +.IP "Running Perl on z/OS" 4 +.IX Item "Running Perl on z/OS" +.PD +For ASCII Only:, For ASCII or EBCDIC: +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD 0 +.IP "OTHER SITES" 4 +.IX Item "OTHER SITES" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perlos400 \- Perl version 5 on OS/400" +.IX Subsection "perlos400 - Perl version 5 on OS/400" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Compiling Perl for OS/400 PASE" 4 +.IX Item "Compiling Perl for OS/400 PASE" +.IP "Installing Perl in OS/400 PASE" 4 +.IX Item "Installing Perl in OS/400 PASE" +.IP "Using Perl in OS/400 PASE" 4 +.IX Item "Using Perl in OS/400 PASE" +.IP "Known Problems" 4 +.IX Item "Known Problems" +.IP "Perl on ILE" 4 +.IX Item "Perl on ILE" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "perlplan9 \- Plan 9\-specific documentation for Perl" +.IX Subsection "perlplan9 - Plan 9-specific documentation for Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Invoking Perl" 4 +.IX Item "Invoking Perl" +.IP "What's in Plan 9 Perl" 4 +.IX Item "What's in Plan 9 Perl" +.IP "What's not in Plan 9 Perl" 4 +.IX Item "What's not in Plan 9 Perl" +.IP "Perl5 Functions not currently supported in Plan 9 Perl" 4 +.IX Item "Perl5 Functions not currently supported in Plan 9 Perl" +.IP "Signals in Plan 9 Perl" 4 +.IX Item "Signals in Plan 9 Perl" +.RE +.RS 4 +.RE +.IP "COMPILING AND INSTALLING PERL ON PLAN 9" 4 +.IX Item "COMPILING AND INSTALLING PERL ON PLAN 9" +.RS 4 +.IP "Installing Perl Documentation on Plan 9" 4 +.IX Item "Installing Perl Documentation on Plan 9" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP "Revision date" 4 +.IX Item "Revision date" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlqnx \- Perl version 5 on QNX" +.IX Subsection "perlqnx - Perl version 5 on QNX" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Required Software for Compiling Perl on QNX4" 4 +.IX Item "Required Software for Compiling Perl on QNX4" +.PD +/bin/sh, ar, nm, cpp, make +.IP "Outstanding Issues with Perl on QNX4" 4 +.IX Item "Outstanding Issues with Perl on QNX4" +.PD 0 +.IP "QNX auxiliary files" 4 +.IX Item "QNX auxiliary files" +.PD +qnx/ar, qnx/cpp +.IP "Outstanding issues with perl under QNX6" 4 +.IX Item "Outstanding issues with perl under QNX6" +.PD 0 +.IP Cross-compilation 4 +.IX Item "Cross-compilation" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlriscos \- Perl version 5 for RISC OS" +.IX Subsection "perlriscos - Perl version 5 for RISC OS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP BUILD 4 +.IX Item "BUILD" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlsolaris \- Perl version 5 on Solaris systems" +.IX Subsection "perlsolaris - Perl version 5 on Solaris systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Solaris Version Numbers." 4 +.IX Item "Solaris Version Numbers." +.RE +.RS 4 +.RE +.IP RESOURCES 4 +.IX Item "RESOURCES" +.PD +Solaris FAQ, Precompiled Binaries, Solaris Documentation +.IP "SETTING UP" 4 +.IX Item "SETTING UP" +.RS 4 +.PD 0 +.IP "File Extraction Problems on Solaris." 4 +.IX Item "File Extraction Problems on Solaris." +.IP "Compiler and Related Tools on Solaris." 4 +.IX Item "Compiler and Related Tools on Solaris." +.IP "Environment for Compiling perl on Solaris" 4 +.IX Item "Environment for Compiling perl on Solaris" +.RE +.RS 4 +.RE +.IP "RUN CONFIGURE." 4 +.IX Item "RUN CONFIGURE." +.RS 4 +.IP "64\-bit perl on Solaris." 4 +.IX Item "64-bit perl on Solaris." +.IP "Threads in perl on Solaris." 4 +.IX Item "Threads in perl on Solaris." +.IP "Malloc Issues with perl on Solaris." 4 +.IX Item "Malloc Issues with perl on Solaris." +.RE +.RS 4 +.RE +.IP "MAKE PROBLEMS." 4 +.IX Item "MAKE PROBLEMS." +.PD +Dynamic Loading Problems With GNU as and GNU ld, ld.so.1: ./perl: fatal: +relocation error:, dlopen: stub interception failed, #error "No +DATAMODEL_NATIVE specified", sh: ar: not found +.IP "MAKE TEST" 4 +.IX Item "MAKE TEST" +.RS 4 +.PD 0 +.IP "op/stat.t test 4 in Solaris" 4 +.IX Item "op/stat.t test 4 in Solaris" +.IP "nss_delete core dump from op/pwent or op/grent" 4 +.IX Item "nss_delete core dump from op/pwent or op/grent" +.RE +.RS 4 +.RE +.IP CROSS-COMPILATION 4 +.IX Item "CROSS-COMPILATION" +.IP "PREBUILT BINARIES OF PERL FOR SOLARIS." 4 +.IX Item "PREBUILT BINARIES OF PERL FOR SOLARIS." +.IP "RUNTIME ISSUES FOR PERL ON SOLARIS." 4 +.IX Item "RUNTIME ISSUES FOR PERL ON SOLARIS." +.RS 4 +.IP "Limits on Numbers of Open Files on Solaris." 4 +.IX Item "Limits on Numbers of Open Files on Solaris." +.RE +.RS 4 +.RE +.IP "SOLARIS-SPECIFIC MODULES." 4 +.IX Item "SOLARIS-SPECIFIC MODULES." +.IP "SOLARIS-SPECIFIC PROBLEMS WITH MODULES." 4 +.IX Item "SOLARIS-SPECIFIC PROBLEMS WITH MODULES." +.RS 4 +.IP "Proc::ProcessTable on Solaris" 4 +.IX Item "Proc::ProcessTable on Solaris" +.IP "BSD::Resource on Solaris" 4 +.IX Item "BSD::Resource on Solaris" +.IP "Net::SSLeay on Solaris" 4 +.IX Item "Net::SSLeay on Solaris" +.RE +.RS 4 +.RE +.IP "SunOS 4.x" 4 +.IX Item "SunOS 4.x" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlsynology \- Perl 5 on Synology DSM systems" +.IX Subsection "perlsynology - Perl 5 on Synology DSM systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Setting up the build environment" 4 +.IX Item "Setting up the build environment" +.IP "Compiling Perl 5" 4 +.IX Item "Compiling Perl 5" +.IP "Known problems" 4 +.IX Item "Known problems" +.PD +Error message "No error definitions found", +\&\fIext/DynaLoader/t/DynaLoader.t\fR +.IP "Smoke testing Perl" 4 +.IX Item "Smoke testing Perl" +.PD 0 +.IP "Adding libraries" 4 +.IX Item "Adding libraries" +.RE +.RS 4 +.RE +.IP REVISION 4 +.IX Item "REVISION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perltru64 \- Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems" +.IX Subsection "perltru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Compiling Perl 5 on Tru64" 4 +.IX Item "Compiling Perl 5 on Tru64" +.IP "Using Large Files with Perl on Tru64" 4 +.IX Item "Using Large Files with Perl on Tru64" +.IP "Threaded Perl on Tru64" 4 +.IX Item "Threaded Perl on Tru64" +.IP "Long Doubles on Tru64" 4 +.IX Item "Long Doubles on Tru64" +.IP "DB_File tests failing on Tru64" 4 +.IX Item "DB_File tests failing on Tru64" +.IP "64\-bit Perl on Tru64" 4 +.IX Item "64-bit Perl on Tru64" +.IP "Warnings about floating-point overflow when compiling Perl on Tru64" 4 +.IX Item "Warnings about floating-point overflow when compiling Perl on Tru64" +.RE +.RS 4 +.RE +.IP "Testing Perl on Tru64" 4 +.IX Item "Testing Perl on Tru64" +.IP "ext/ODBM_File/odbm Test Failing With Static Builds" 4 +.IX Item "ext/ODBM_File/odbm Test Failing With Static Builds" +.IP "Perl Fails Because Of Unresolved Symbol sockatmark" 4 +.IX Item "Perl Fails Because Of Unresolved Symbol sockatmark" +.IP "read_cur_obj_info: bad file magic number" 4 +.IX Item "read_cur_obj_info: bad file magic number" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlvms \- VMS-specific documentation for Perl" +.IX Subsection "perlvms - VMS-specific documentation for Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP Installation 4 +.IX Item "Installation" +.IP "Organization of Perl Images" 4 +.IX Item "Organization of Perl Images" +.RS 4 +.IP "Core Images" 4 +.IX Item "Core Images" +.IP "Perl Extensions" 4 +.IX Item "Perl Extensions" +.IP "Installing static extensions" 4 +.IX Item "Installing static extensions" +.IP "Installing dynamic extensions" 4 +.IX Item "Installing dynamic extensions" +.RE +.RS 4 +.RE +.IP "File specifications" 4 +.IX Item "File specifications" +.RS 4 +.IP Syntax 4 +.IX Item "Syntax" +.IP "Filename Case" 4 +.IX Item "Filename Case" +.IP "Symbolic Links" 4 +.IX Item "Symbolic Links" +.IP "Wildcard expansion" 4 +.IX Item "Wildcard expansion" +.IP Pipes 4 +.IX Item "Pipes" +.RE +.RS 4 +.RE +.IP "PERL5LIB and PERLLIB" 4 +.IX Item "PERL5LIB and PERLLIB" +.IP "The Perl Forked Debugger" 4 +.IX Item "The Perl Forked Debugger" +.IP PERL_VMS_EXCEPTION_DEBUG 4 +.IX Item "PERL_VMS_EXCEPTION_DEBUG" +.IP "Command line" 4 +.IX Item "Command line" +.RS 4 +.IP "I/O redirection and backgrounding" 4 +.IX Item "I/O redirection and backgrounding" +.IP "Command line switches" 4 +.IX Item "Command line switches" +.PD +\&\-i, \-S, \-u +.RE +.RS 4 +.RE +.IP "Perl functions" 4 +.IX Item "Perl functions" +File tests, backticks, binmode FILEHANDLE, crypt PLAINTEXT, USER, die, +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 +.IP "Perl variables" 4 +.IX Item "Perl variables" +\&\f(CW%ENV\fR, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $| +.IP "Standard modules with VMS-specific differences" 4 +.IX Item "Standard modules with VMS-specific differences" +.RS 4 +.PD 0 +.IP SDBM_File 4 +.IX Item "SDBM_File" +.RE +.RS 4 +.RE +.IP "Revision date" 4 +.IX Item "Revision date" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "perlvos \- Perl for Stratus OpenVOS" +.IX Subsection "perlvos - Perl for Stratus OpenVOS" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "BUILDING PERL FOR OPENVOS" 4 +.IX Item "BUILDING PERL FOR OPENVOS" +.IP "INSTALLING PERL IN OPENVOS" 4 +.IX Item "INSTALLING PERL IN OPENVOS" +.IP "USING PERL IN OPENVOS" 4 +.IX Item "USING PERL IN OPENVOS" +.RS 4 +.IP "Restrictions of Perl on OpenVOS" 4 +.IX Item "Restrictions of Perl on OpenVOS" +.RE +.RS 4 +.RE +.IP "TEST STATUS" 4 +.IX Item "TEST STATUS" +.IP "SUPPORT STATUS" 4 +.IX Item "SUPPORT STATUS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "LAST UPDATE" 4 +.IX Item "LAST UPDATE" +.PD +.SS "perlwin32 \- Perl under Windows" +.IX Subsection "perlwin32 - Perl under Windows" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +<https://osdn.net/projects/mingw/>, <https://mingw\-w64.org> +.RS 4 +.IP "Setting Up Perl on Windows" 4 +.IX Item "Setting Up Perl on Windows" +Make, Command Shell, Microsoft Visual C++, Microsoft Visual C++ 2013\-2022 +Community Edition, Microsoft C++ Build Tools, GCC, Intel C++ Compiler +.IP Building 4 +.IX Item "Building" +.PD 0 +.IP "Testing Perl on Windows" 4 +.IX Item "Testing Perl on Windows" +.IP "Installation of Perl on Windows" 4 +.IX Item "Installation of Perl on Windows" +.IP "Usage Hints for Perl on Windows" 4 +.IX Item "Usage Hints for Perl on Windows" +.PD +Environment Variables, File Globbing, Using perl from the command line, +Building Extensions, Command-line Wildcard Expansion, Notes on 64\-bit +Windows +.IP "Running Perl Scripts" 4 +.IX Item "Running Perl Scripts" +.PD 0 +.IP "Miscellaneous Things" 4 +.IX Item "Miscellaneous Things" +.RE +.RS 4 +.RE +.IP "BUGS AND CAVEATS" 4 +.IX Item "BUGS AND CAVEATS" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +Gary Ng <71564.1743@CompuServe.COM>, Gurusamy Sarathy +<gsar@activestate.com>, Nick Ing-Simmons +<nick@ing\-simmons.net>, Jan Dubois <jand@activestate.com>, +Steve Hay <steve.m.hay@googlemail.com> +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "perlboot \- Links to information on object-oriented programming in Perl" +.IX Subsection "perlboot - Links to information on object-oriented programming in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "perlbot \- Links to information on object-oriented programming in Perl" +.IX Subsection "perlbot - Links to information on object-oriented programming in Perl" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "perlrepository \- Links to current information on the Perl source repository" +.IX Subsection "perlrepository - Links to current information on the Perl source repository" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "perltodo \- Link to the Perl to-do list" +.IX Subsection "perltodo - Link to the Perl to-do list" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "perltooc \- Links to information on object-oriented programming in Perl" +.IX Subsection "perltooc - Links to information on object-oriented programming in Perl" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "perltoot \- Links to information on object-oriented programming in Perl" +.IX Subsection "perltoot - Links to information on object-oriented programming in Perl" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SH "PRAGMA DOCUMENTATION" +.IX Header "PRAGMA DOCUMENTATION" +.SS "attributes \- get/set subroutine or variable attributes" +.IX Subsection "attributes - get/set subroutine or variable attributes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "What ""import"" does" 4 +.el .IP "What \f(CWimport\fR does" 4 +.IX Item "What import does" +.IP "Built-in Attributes" 4 +.IX Item "Built-in Attributes" +.PD +lvalue, method, prototype(..), const, shared +.IP "Available Subroutines" 4 +.IX Item "Available Subroutines" +get, reftype +.IP "Package-specific Attribute Handling" 4 +.IX Item "Package-specific Attribute Handling" +FETCH_\fItype\fR_ATTRIBUTES, MODIFY_\fItype\fR_ATTRIBUTES +.IP "Syntax of Attribute Lists" 4 +.IX Item "Syntax of Attribute Lists" +.RE +.RS 4 +.RE +.PD 0 +.IP EXPORTS 4 +.IX Item "EXPORTS" +.RS 4 +.IP "Default exports" 4 +.IX Item "Default exports" +.IP "Available exports" 4 +.IX Item "Available exports" +.IP "Export tags defined" 4 +.IX Item "Export tags defined" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP "MORE EXAMPLES" 4 +.IX Item "MORE EXAMPLES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "autodie \- Replace functions with ones that succeed or die with lexical scope" +.IX Subsection "autodie - Replace functions with ones that succeed or die with lexical scope" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXCEPTIONS 4 +.IX Item "EXCEPTIONS" +.IP CATEGORIES 4 +.IX Item "CATEGORIES" +.IP "FUNCTION SPECIFIC NOTES" 4 +.IX Item "FUNCTION SPECIFIC NOTES" +.RS 4 +.IP print 4 +.IX Item "print" +.IP flock 4 +.IX Item "flock" +.IP system/exec 4 +.IX Item "system/exec" +.RE +.RS 4 +.RE +.IP GOTCHAS 4 +.IX Item "GOTCHAS" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +:void cannot be used with lexical scope, No user hints defined for \f(CW%s\fR +.IP "Tips and Tricks" 4 +.IX Item "Tips and Tricks" +.RS 4 +.PD 0 +.IP "Importing autodie into another namespace than ""caller""" 4 +.IX Item "Importing autodie into another namespace than ""caller""" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.RS 4 +.IP "autodie and string eval" 4 +.IX Item "autodie and string eval" +.IP "REPORTING BUGS" 4 +.IX Item "REPORTING BUGS" +.RE +.RS 4 +.RE +.IP FEEDBACK 4 +.IX Item "FEEDBACK" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.PD +.SS "autodie::Scope::Guard \- Wrapper class for calling subs at end of scope" +.IX Subsection "autodie::Scope::Guard - Wrapper class for calling subs at end of scope" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Methods 4 +.IX Item "Methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "autodie::Scope::GuardStack \- Hook stack for managing scopes via %^H" +.IX Subsection "autodie::Scope::GuardStack - Hook stack for managing scopes via %^H" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Methods 4 +.IX Item "Methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "autodie::Util \- Internal Utility subroutines for autodie and Fatal" +.IX Subsection "autodie::Util - Internal Utility subroutines for autodie and Fatal" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Methods 4 +.IX Item "Methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "autodie::exception \- Exceptions from autodying functions." +.IX Subsection "autodie::exception - Exceptions from autodying functions." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Common Methods" 4 +.IX Item "Common Methods" +.RE +.RS 4 +.RE +.IP "Advanced methods" 4 +.IX Item "Advanced methods" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "autodie::exception::system \- Exceptions from autodying \fBsystem()\fP." +.IX Subsection "autodie::exception::system - Exceptions from autodying system()." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP stringify 4 +.IX Item "stringify" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "autodie::hints \- Provide hints about user subroutines to autodie" +.IX Subsection "autodie::hints - Provide hints about user subroutines to autodie" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Introduction 4 +.IX Item "Introduction" +.IP "What are hints?" 4 +.IX Item "What are hints?" +.IP "Example hints" 4 +.IX Item "Example hints" +.RE +.RS 4 +.RE +.IP "Manually setting hints from within your program" 4 +.IX Item "Manually setting hints from within your program" +.IP "Adding hints to your module" 4 +.IX Item "Adding hints to your module" +.IP "Insisting on hints" 4 +.IX Item "Insisting on hints" +.IP Diagnostics 4 +.IX Item "Diagnostics" +.PD +Attempts to set_hints_for unidentifiable subroutine, fail hints cannot be +provided with either scalar or list hints for \f(CW%s\fR, \f(CW%s\fR hint missing for \f(CW%s\fR +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "autodie::skip \- Skip a package when throwing autodie exceptions" +.IX Subsection "autodie::skip - Skip a package when throwing autodie exceptions" +.IP SYNPOSIS 4 +.IX Item "SYNPOSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "autouse \- postpone load of modules until a function is used" +.IX Subsection "autouse - postpone load of modules until a function is used" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP WARNING 4 +.IX Item "WARNING" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "base \- Establish an ISA relationship with base classes at compile time" +.IX Subsection "base - Establish an ISA relationship with base classes at compile time" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +Base class package "%s" is empty, Class 'Foo' tried to inherit from itself +.IP HISTORY 4 +.IX Item "HISTORY" +.PD 0 +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "bigfloat \- transparent big floating point number support for Perl" +.IX Subsection "bigfloat - transparent big floating point number support for Perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Options 4 +.IX Item "Options" +.PD +a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, +v or version +.IP "Math Library" 4 +.IX Item "Math Library" +.PD 0 +.IP "Method calls" 4 +.IX Item "Method calls" +.IP Methods 4 +.IX Item "Methods" +.PD +\&\fBinf()\fR, \fBNaN()\fR, e, PI, \fBbexp()\fR, \fBbpi()\fR, \fBaccuracy()\fR, \fBprecision()\fR, \fBround_mode()\fR, +\&\fBdiv_scale()\fR, \fBupgrade()\fR, \fBdowngrade()\fR, \fBin_effect()\fR +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +Hexadecimal, octal, and binary floating point literals, Operator vs literal +overloading, Ranges, \fBin_effect()\fR, \fBhex()\fR/\fBoct()\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "bigint \- transparent big integer support for Perl" +.IX Subsection "bigint - transparent big integer support for Perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "use integer vs. use bigint" 4 +.IX Item "use integer vs. use bigint" +.IP Options 4 +.IX Item "Options" +.PD +a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, +v or version +.IP "Math Library" 4 +.IX Item "Math Library" +.PD 0 +.IP "Method calls" 4 +.IX Item "Method calls" +.IP Methods 4 +.IX Item "Methods" +.PD +\&\fBinf()\fR, \fBNaN()\fR, e, PI, \fBbexp()\fR, \fBbpi()\fR, \fBaccuracy()\fR, \fBprecision()\fR, \fBround_mode()\fR, +\&\fBdiv_scale()\fR, \fBin_effect()\fR +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +Hexadecimal, octal, and binary floating point literals, Operator vs literal +overloading, Ranges, \fBin_effect()\fR, \fBhex()\fR/\fBoct()\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "bignum \- transparent big number support for Perl" +.IX Subsection "bignum - transparent big number support for Perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Literal numeric constants" 4 +.IX Item "Literal numeric constants" +.IP "Upgrading and downgrading" 4 +.IX Item "Upgrading and downgrading" +.IP Overloading 4 +.IX Item "Overloading" +.IP Options 4 +.IX Item "Options" +.PD +a or accuracy, p or precision, l, lib, try, or only, hex, oct, v or version +.IP "Math Library" 4 +.IX Item "Math Library" +.PD 0 +.IP "Method calls" 4 +.IX Item "Method calls" +.IP Methods 4 +.IX Item "Methods" +.PD +\&\fBinf()\fR, \fBNaN()\fR, e, PI, \fBbexp()\fR, \fBbpi()\fR, \fBaccuracy()\fR, \fBprecision()\fR, \fBround_mode()\fR, +\&\fBdiv_scale()\fR, \fBupgrade()\fR, \fBdowngrade()\fR, \fBin_effect()\fR +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +The \fBupgrade()\fR and \fBdowngrade()\fR methods, Hexadecimal, octal, and binary +floating point literals, Operator vs literal overloading, Ranges, +\&\fBin_effect()\fR, \fBhex()\fR/\fBoct()\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "bigrat \- transparent big rational number support for Perl" +.IX Subsection "bigrat - transparent big rational number support for Perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Options 4 +.IX Item "Options" +.PD +a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, +v or version +.IP "Math Library" 4 +.IX Item "Math Library" +.PD 0 +.IP "Method calls" 4 +.IX Item "Method calls" +.IP Methods 4 +.IX Item "Methods" +.PD +\&\fBinf()\fR, \fBNaN()\fR, e, PI, \fBbexp()\fR, \fBbpi()\fR, \fBaccuracy()\fR, \fBprecision()\fR, \fBround_mode()\fR, +\&\fBdiv_scale()\fR, \fBin_effect()\fR +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +Hexadecimal, octal, and binary floating point literals, Operator vs literal +overloading, Ranges, \fBin_effect()\fR, \fBhex()\fR/\fBoct()\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "blib \- Use MakeMaker's uninstalled version of a package" +.IX Subsection "blib - Use MakeMaker's uninstalled version of a package" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "builtin \- Perl pragma to import built-in utility functions" +.IX Subsection "builtin - Perl pragma to import built-in utility functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Lexical Import" 4 +.IX Item "Lexical Import" +.RE +.RS 4 +.RE +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP true 4 +.IX Item "true" +.IP false 4 +.IX Item "false" +.IP is_bool 4 +.IX Item "is_bool" +.IP weaken 4 +.IX Item "weaken" +.IP unweaken 4 +.IX Item "unweaken" +.IP is_weak 4 +.IX Item "is_weak" +.IP blessed 4 +.IX Item "blessed" +.IP refaddr 4 +.IX Item "refaddr" +.IP reftype 4 +.IX Item "reftype" +.IP created_as_string 4 +.IX Item "created_as_string" +.IP created_as_number 4 +.IX Item "created_as_number" +.IP ceil 4 +.IX Item "ceil" +.IP floor 4 +.IX Item "floor" +.IP indexed 4 +.IX Item "indexed" +.IP trim 4 +.IX Item "trim" +.IP is_tainted 4 +.IX Item "is_tainted" +.IP export_lexically 4 +.IX Item "export_lexically" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "bytes \- Perl pragma to expose the individual bytes of characters" +.IX Subsection "bytes - Perl pragma to expose the individual bytes of characters" +.IP NOTICE 4 +.IX Item "NOTICE" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "charnames \- access to Unicode character names and named character sequences; also define character names" +.IX Subsection "charnames - access to Unicode character names and named character sequences; also define character names" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "LOOSE MATCHES" 4 +.IX Item "LOOSE MATCHES" +.IP ALIASES 4 +.IX Item "ALIASES" +.IP "CUSTOM ALIASES" 4 +.IX Item "CUSTOM ALIASES" +.IP charnames::string_vianame(\fIname\fR) 4 +.IX Item "charnames::string_vianame(name)" +.IP charnames::vianame(\fIname\fR) 4 +.IX Item "charnames::vianame(name)" +.IP charnames::viacode(\fIcode\fR) 4 +.IX Item "charnames::viacode(code)" +.IP "CUSTOM TRANSLATORS" 4 +.IX Item "CUSTOM TRANSLATORS" +.IP BUGS 4 +.IX Item "BUGS" +.PD +.SS "constant \- Perl pragma to declare constants" +.IX Subsection "constant - Perl pragma to declare constants" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.RS 4 +.IP "List constants" 4 +.IX Item "List constants" +.IP "Defining multiple constants at once" 4 +.IX Item "Defining multiple constants at once" +.IP "Magic constants" 4 +.IX Item "Magic constants" +.RE +.RS 4 +.RE +.IP "TECHNICAL NOTES" 4 +.IX Item "TECHNICAL NOTES" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "deprecate \- Perl pragma for deprecating the inclusion of a module in core" +.IX Subsection "deprecate - Perl pragma for deprecating the inclusion of a module in core" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Important Caveat" 4 +.IX Item "Important Caveat" +.RE +.RS 4 +.RE +.IP EXPORT 4 +.IX Item "EXPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "diagnostics, splain \- produce verbose warning diagnostics" +.IX Subsection "diagnostics, splain - produce verbose warning diagnostics" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "The ""diagnostics"" Pragma" 4 +.el .IP "The \f(CWdiagnostics\fR Pragma" 4 +.IX Item "The diagnostics Pragma" +.IP "The \fIsplain\fR Program" 4 +.IX Item "The splain Program" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP INTERNALS 4 +.IX Item "INTERNALS" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "encoding \- allows you to write your script in non-ASCII and non\-UTF\-8" +.IX Subsection "encoding - allows you to write your script in non-ASCII and non-UTF-8" +.IP WARNING 4 +.IX Item "WARNING" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`use encoding [\*(Aq\fR\f(CIENCNAME\fR\f(CW\*(Aq] ;\*(C'\fR, \f(CW\*(C`use encoding \fR\f(CIENCNAME\fR\f(CW, +Filter=>1;\*(C'\fR, \f(CW\*(C`no encoding;\*(C'\fR +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RS 4 +.PD 0 +.ie n .IP "Setting ""STDIN"" and/or ""STDOUT"" individually" 4 +.el .IP "Setting \f(CWSTDIN\fR and/or \f(CWSTDOUT\fR individually" 4 +.IX Item "Setting STDIN and/or STDOUT individually" +.ie n .IP "The "":locale"" sub-pragma" 4 +.el .IP "The \f(CW:locale\fR sub-pragma" 4 +.IX Item "The :locale sub-pragma" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.RS 4 +.IP "SIDE EFFECTS" 4 +.IX Item "SIDE EFFECTS" +.IP "DO NOT MIX MULTIPLE ENCODINGS" 4 +.IX Item "DO NOT MIX MULTIPLE ENCODINGS" +.IP "Prior to Perl v5.22" 4 +.IX Item "Prior to Perl v5.22" +.IP "Prior to Encode version 1.87" 4 +.IX Item "Prior to Encode version 1.87" +.IP "Prior to Perl v5.8.1" 4 +.IX Item "Prior to Perl v5.8.1" +.PD +"NON-EUC" doublebyte encodings, \f(CW\*(C`tr///\*(C'\fR, Legend of characters above +.RE +.RS 4 +.RE +.IP "EXAMPLE \- Greekperl" 4 +.IX Item "EXAMPLE - Greekperl" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.PD +Thread safety, Can't be used by more than one module in a single program, +Other modules using \f(CW\*(C`STDIN\*(C'\fR and \f(CW\*(C`STDOUT\*(C'\fR get the encoded stream, literals +in regex that are longer than 127 bytes, EBCDIC, \f(CW\*(C`format\*(C'\fR, See also +"CAVEATS" in encoding +.IP HISTORY 4 +.IX Item "HISTORY" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "encoding::warnings \- Warn on implicit encoding conversions" +.IX Subsection "encoding::warnings - Warn on implicit encoding conversions" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP NOTICE 4 +.IX Item "NOTICE" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overview of the problem" 4 +.IX Item "Overview of the problem" +.IP "Detecting the problem" 4 +.IX Item "Detecting the problem" +.IP "Solving the problem" 4 +.IX Item "Solving the problem" +.PD +Upgrade both sides to unicode-strings, Downgrade both sides to +byte-strings, Specify the encoding for implicit byte-string upgrading, +PerlIO layers for \fBSTDIN\fR and \fBSTDOUT\fR, Literal conversions, Implicit +upgrading for byte-strings +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "experimental \- Experimental features made easy" +.IX Subsection "experimental - Experimental features made easy" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`args_array_with_signatures\*(C'\fR \- allow \f(CW@_\fR to be used in signatured subs, +\&\f(CW\*(C`array_base\*(C'\fR \- allow the use of \f(CW$[\fR to change the starting index of +\&\f(CW@array\fR, \f(CW\*(C`autoderef\*(C'\fR \- allow push, each, keys, and other built-ins on +references, \f(CW\*(C`bitwise\*(C'\fR \- allow the new stringwise bit operators, \f(CW\*(C`builtin\*(C'\fR +\&\- allow the use of the functions in the builtin:: namespace, \f(CW\*(C`const_attr\*(C'\fR +\&\- allow the :const attribute on subs, \f(CW\*(C`declared_refs\*(C'\fR \- enables aliasing +via assignment to references, \f(CW\*(C`defer\*(C'\fR \- enables the use of defer blocks, +\&\f(CW\*(C`extra_paired_delimiters\*(C'\fR \- enables the use of more paired string +delimiters than the traditional four, \f(CW\*(C`<\ \ >\*(C'\fR, \f(CW\*(C`(\ )\*(C'\fR, \f(CW\*(C`{\ }\*(C'\fR, +and \f(CW\*(C`[\ ]\*(C'\fR, \f(CW\*(C`for_list\*(C'\fR \- allows iterating over multiple values at a +time with \f(CW\*(C`for\*(C'\fR, \f(CW\*(C`isa\*(C'\fR \- allow the use of the \f(CW\*(C`isa\*(C'\fR infix operator, +\&\f(CW\*(C`lexical_topic\*(C'\fR \- allow the use of lexical \f(CW$_\fR via \f(CW\*(C`my $_\*(C'\fR, +\&\f(CW\*(C`lexical_subs\*(C'\fR \- allow the use of lexical subroutines, \f(CW\*(C`postderef\*(C'\fR \- +allow the use of postfix dereferencing expressions, \f(CW\*(C`postderef_qq\*(C'\fR \- allow +the use of postfix dereferencing expressions inside interpolating strings, +\&\f(CW\*(C`re_strict\*(C'\fR \- enables strict mode in regular expressions, \f(CW\*(C`refaliasing\*(C'\fR \- +allow aliasing via \f(CW\*(C`\e$x = \e$y\*(C'\fR, \f(CW\*(C`regex_sets\*(C'\fR \- allow extended bracketed +character classes in regexps, \f(CW\*(C`signatures\*(C'\fR \- allow subroutine signatures +(for named arguments), \f(CW\*(C`smartmatch\*(C'\fR \- allow the use of \f(CW\*(C`~~\*(C'\fR, \f(CW\*(C`switch\*(C'\fR \- +allow the use of \f(CW\*(C`~~\*(C'\fR, given, and when, \f(CW\*(C`try\*(C'\fR \- allow the use of \f(CW\*(C`try\*(C'\fR +and \f(CW\*(C`catch\*(C'\fR, \f(CW\*(C`win32_perlio\*(C'\fR \- allows the use of the :win32 IO layer +.RS 4 +.IP "Ordering matters" 4 +.IX Item "Ordering matters" +.PD 0 +.IP Disclaimer 4 +.IX Item "Disclaimer" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "feature \- Perl pragma to enable new features" +.IX Subsection "feature - Perl pragma to enable new features" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Lexical effect" 4 +.IX Item "Lexical effect" +.ie n .IP """no feature""" 4 +.el .IP "\f(CWno feature\fR" 4 +.IX Item "no feature" +.RE +.RS 4 +.RE +.IP "AVAILABLE FEATURES" 4 +.IX Item "AVAILABLE FEATURES" +.RS 4 +.IP "The 'say' feature" 4 +.IX Item "The 'say' feature" +.IP "The 'state' feature" 4 +.IX Item "The 'state' feature" +.IP "The 'switch' feature" 4 +.IX Item "The 'switch' feature" +.IP "The 'unicode_strings' feature" 4 +.IX Item "The 'unicode_strings' feature" +.IP "The 'unicode_eval' and 'evalbytes' features" 4 +.IX Item "The 'unicode_eval' and 'evalbytes' features" +.IP "The 'current_sub' feature" 4 +.IX Item "The 'current_sub' feature" +.IP "The 'array_base' feature" 4 +.IX Item "The 'array_base' feature" +.IP "The 'fc' feature" 4 +.IX Item "The 'fc' feature" +.IP "The 'lexical_subs' feature" 4 +.IX Item "The 'lexical_subs' feature" +.IP "The 'postderef' and 'postderef_qq' features" 4 +.IX Item "The 'postderef' and 'postderef_qq' features" +.IP "The 'signatures' feature" 4 +.IX Item "The 'signatures' feature" +.IP "The 'refaliasing' feature" 4 +.IX Item "The 'refaliasing' feature" +.IP "The 'bitwise' feature" 4 +.IX Item "The 'bitwise' feature" +.IP "The 'declared_refs' feature" 4 +.IX Item "The 'declared_refs' feature" +.IP "The 'isa' feature" 4 +.IX Item "The 'isa' feature" +.IP "The 'indirect' feature" 4 +.IX Item "The 'indirect' feature" +.IP "The 'multidimensional' feature" 4 +.IX Item "The 'multidimensional' feature" +.IP "The 'bareword_filehandles' feature" 4 +.IX Item "The 'bareword_filehandles' feature" +.IP "The 'try' feature" 4 +.IX Item "The 'try' feature" +.IP "The 'defer' feature" 4 +.IX Item "The 'defer' feature" +.IP "The 'extra_paired_delimiters' feature" 4 +.IX Item "The 'extra_paired_delimiters' feature" +.IP "The 'module_true' feature" 4 +.IX Item "The 'module_true' feature" +.IP "The 'class' feature" 4 +.IX Item "The 'class' feature" +.RE +.RS 4 +.RE +.IP "FEATURE BUNDLES" 4 +.IX Item "FEATURE BUNDLES" +.IP "IMPLICIT LOADING" 4 +.IX Item "IMPLICIT LOADING" +.IP "CHECKING FEATURES" 4 +.IX Item "CHECKING FEATURES" +.PD +feature_enabled($feature), feature_enabled($feature, \f(CW$depth\fR), +\&\fBfeatures_enabled()\fR, features_enabled($depth), \fBfeature_bundle()\fR, +feature_bundle($depth) +.SS "fields \- compile-time class fields" +.IX Subsection "fields - compile-time class fields" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +new, phash +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "filetest \- Perl pragma to control the filetest permission operators" +.IX Subsection "filetest - Perl pragma to control the filetest permission operators" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Consider this carefully" 4 +.IX Item "Consider this carefully" +.IP "The ""access"" sub-pragma" 4 +.IX Item "The ""access"" sub-pragma" +.ie n .IP "Limitation with regard to ""_""" 4 +.el .IP "Limitation with regard to \f(CW_\fR" 4 +.IX Item "Limitation with regard to _" +.RE +.RS 4 +.RE +.PD +.ie n .SS "if \- ""use"" a Perl module if a condition holds" +.el .SS "if \- \f(CWuse\fP a Perl module if a condition holds" +.IX Subsection "if - use a Perl module if a condition holds" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP """use if""" 4 +.el .IP "\f(CWuse if\fR" 4 +.IX Item "use if" +.ie n .IP """no if""" 4 +.el .IP "\f(CWno if\fR" 4 +.IX Item "no if" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENCE" 4 +.IX Item "COPYRIGHT AND LICENCE" +.PD +.SS "integer \- Perl pragma to use integer arithmetic instead of floating point" +.IX Subsection "integer - Perl pragma to use integer arithmetic instead of floating point" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "less \- perl pragma to request less of something" +.IX Subsection "less - perl pragma to request less of something" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FOR MODULE AUTHORS" 4 +.IX Item "FOR MODULE AUTHORS" +.RS 4 +.ie n .IP """BOOLEAN = less\->of( FEATURE )""" 4 +.el .IP "\f(CWBOOLEAN = less\->of( FEATURE )\fR" 4 +.IX Item "BOOLEAN = less->of( FEATURE )" +.ie n .IP """FEATURES = less\->of()""" 4 +.el .IP "\f(CWFEATURES = less\->of()\fR" 4 +.IX Item "FEATURES = less->of()" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +This probably does nothing, This works only on 5.10+ +.ie n .SS "lib \- manipulate @INC at compile time" +.el .SS "lib \- manipulate \f(CW@INC\fP at compile time" +.IX Subsection "lib - manipulate @INC at compile time" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "Adding directories to @INC" 4 +.el .IP "Adding directories to \f(CW@INC\fR" 4 +.IX Item "Adding directories to @INC" +.ie n .IP "Deleting directories from @INC" 4 +.el .IP "Deleting directories from \f(CW@INC\fR" 4 +.IX Item "Deleting directories from @INC" +.ie n .IP "Restoring original @INC" 4 +.el .IP "Restoring original \f(CW@INC\fR" 4 +.IX Item "Restoring original @INC" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP NOTES 4 +.IX Item "NOTES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "locale \- Perl pragma to use or avoid POSIX locales for built-in operations" +.IX Subsection "locale - Perl pragma to use or avoid POSIX locales for built-in operations" +.IP WARNING 4 +.IX Item "WARNING" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "mro \- Method Resolution Order" +.IX Subsection "mro - Method Resolution Order" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OVERVIEW 4 +.IX Item "OVERVIEW" +.IP "The C3 MRO" 4 +.IX Item "The C3 MRO" +.RS 4 +.IP "What is C3?" 4 +.IX Item "What is C3?" +.IP "How does C3 work" 4 +.IX Item "How does C3 work" +.RE +.RS 4 +.RE +.IP Functions 4 +.IX Item "Functions" +.RS 4 +.ie n .IP "mro::get_linear_isa($classname[, $type])" 4 +.el .IP "mro::get_linear_isa($classname[, \f(CW$type\fR])" 4 +.IX Item "mro::get_linear_isa($classname[, $type])" +.ie n .IP "mro::set_mro ($classname, $type)" 4 +.el .IP "mro::set_mro ($classname, \f(CW$type\fR)" 4 +.IX Item "mro::set_mro ($classname, $type)" +.IP mro::get_mro($classname) 4 +.IX Item "mro::get_mro($classname)" +.IP mro::get_isarev($classname) 4 +.IX Item "mro::get_isarev($classname)" +.IP mro::is_universal($classname) 4 +.IX Item "mro::is_universal($classname)" +.IP \fBmro::invalidate_all_method_caches()\fR 4 +.IX Item "mro::invalidate_all_method_caches()" +.IP mro::method_changed_in($classname) 4 +.IX Item "mro::method_changed_in($classname)" +.IP mro::get_pkg_gen($classname) 4 +.IX Item "mro::get_pkg_gen($classname)" +.IP next::method 4 +.IX Item "next::method" +.IP next::can 4 +.IX Item "next::can" +.IP maybe::next::method 4 +.IX Item "maybe::next::method" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP "The original Dylan paper" 4 +.IX Item "The original Dylan paper" +.PD +"/citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.19.3910&rep=rep1 +&type=pdf" in http: +.IP "Python 2.3 MRO" 4 +.IX Item "Python 2.3 MRO" +<https://www.python.org/download/releases/2.3/mro/> +.IP Class::C3 4 +.IX Item "Class::C3" +Class::C3 +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "ok \- Alternative to Test::More::use_ok" +.IX Subsection "ok - Alternative to Test::More::use_ok" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CC0 1.0 Universal" 4 +.IX Item "CC0 1.0 Universal" +.PD +.SS "open \- perl pragma to set default PerlIO layers for input and output" +.IX Subsection "open - perl pragma to set default PerlIO layers for input and output" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "IMPLEMENTATION DETAILS" 4 +.IX Item "IMPLEMENTATION DETAILS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ops \- Perl pragma to restrict unsafe operations when compiling" +.IX Subsection "ops - Perl pragma to restrict unsafe operations when compiling" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "overload \- Package for overloading Perl operations" +.IX Subsection "overload - Package for overloading Perl operations" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Fundamentals 4 +.IX Item "Fundamentals" +.IP "Overloadable Operations" 4 +.IX Item "Overloadable Operations" +.PD +\&\f(CW\*(C`not\*(C'\fR, \f(CW\*(C`neg\*(C'\fR, \f(CW\*(C`++\*(C'\fR, \f(CW\*(C`\-\-\*(C'\fR, \fIAssignments\fR, \fINon-mutators with a mutator +variant\fR, \f(CW\*(C`int\*(C'\fR, \fIString, numeric, boolean, and regexp conversions\fR, +\&\fIIteration\fR, \fIFile tests\fR, \fIMatching\fR, \fIDereferencing\fR, \fISpecial\fR +.IP "Magic Autogeneration" 4 +.IX Item "Magic Autogeneration" +.PD 0 +.ie n .IP "Special Keys for ""use overload""" 4 +.el .IP "Special Keys for \f(CWuse overload\fR" 4 +.IX Item "Special Keys for use overload" +.PD +defined, but FALSE, \f(CW\*(C`undef\*(C'\fR, TRUE +.IP "How Perl Chooses an Operator Implementation" 4 +.IX Item "How Perl Chooses an Operator Implementation" +.PD 0 +.IP "Losing Overloading" 4 +.IX Item "Losing Overloading" +.IP "Inheritance and Overloading" 4 +.IX Item "Inheritance and Overloading" +.PD +Method names in the \f(CW\*(C`use overload\*(C'\fR directive, Overloading of an operation +is inherited by derived classes +.IP "Run-time Overloading" 4 +.IX Item "Run-time Overloading" +.PD 0 +.IP "Public Functions" 4 +.IX Item "Public Functions" +.PD +overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op) +.IP "Overloading Constants" 4 +.IX Item "Overloading Constants" +integer, float, binary, q, qr +.RE +.RS 4 +.RE +.IP IMPLEMENTATION 4 +.IX Item "IMPLEMENTATION" +.PD 0 +.IP COOKBOOK 4 +.IX Item "COOKBOOK" +.RS 4 +.IP "Two-face Scalars" 4 +.IX Item "Two-face Scalars" +.IP "Two-face References" 4 +.IX Item "Two-face References" +.IP "Symbolic Calculator" 4 +.IX Item "Symbolic Calculator" +.IP "\fIReally\fR Symbolic Calculator" 4 +.IX Item "Really Symbolic Calculator" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +Odd number of arguments for overload::constant, '%s' is not an overloadable +type, '%s' is not a code reference, overload arg '%s' is invalid +.IP "BUGS AND PITFALLS" 4 +.IX Item "BUGS AND PITFALLS" +.SS "overloading \- perl pragma to lexically control overloading" +.IX Subsection "overloading - perl pragma to lexically control overloading" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`no overloading\*(C'\fR, \f(CW\*(C`no overloading @ops\*(C'\fR, \f(CW\*(C`use overloading\*(C'\fR, \f(CW\*(C`use +overloading @ops\*(C'\fR +.SS "parent \- Establish an ISA relationship with base classes at compile time" +.IX Subsection "parent - Establish an ISA relationship with base classes at compile time" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +base, parent::versioned +.IP "AUTHORS AND CONTRIBUTORS" 4 +.IX Item "AUTHORS AND CONTRIBUTORS" +.PD 0 +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "re \- Perl pragma to alter regular expression behaviour" +.IX Subsection "re - Perl pragma to alter regular expression behaviour" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "'taint' mode" 4 +.IX Item "'taint' mode" +.IP "'eval' mode" 4 +.IX Item "'eval' mode" +.IP "'strict' mode" 4 +.IX Item "'strict' mode" +.IP "'/flags' mode" 4 +.IX Item "'/flags' mode" +.IP "'debug' mode" 4 +.IX Item "'debug' mode" +.IP "'Debug' mode" 4 +.IX Item "'Debug' mode" +.PD +Compile related options, COMPILE, PARSE, OPTIMISE, TRIEC, DUMP, FLAGS, +TEST, Execute related options, EXECUTE, MATCH, TRIEE, INTUIT, Extra +debugging options, EXTRA, BUFFERS, TRIEM, STATE, STACK, GPOS, OPTIMISEM, +DUMP_PRE_OPTIMIZE, WILDCARD, Other useful flags, ALL, All, MORE, More +.IP "Exportable Functions" 4 +.IX Item "Exportable Functions" +is_regexp($ref), regexp_pattern($ref), regname($name,$all), regnames($all), +\&\fBregnames_count()\fR, regmust($ref), optimization($ref), minlen, minlenret, +gofs, noscan, isall, anchor SBOL, anchor MBOL, anchor GPOS, skip, implicit, +anchored/floating, anchored utf8/floating utf8, anchored min +offset/floating min offset, anchored max offset/floating max offset, +anchored end shift/floating end shift, checking, stclass +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "sigtrap \- Perl pragma to enable simple signal handling" +.IX Subsection "sigtrap - Perl pragma to enable simple signal handling" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RS 4 +.IP "SIGNAL HANDLERS" 4 +.IX Item "SIGNAL HANDLERS" +.PD +\&\fBstack-trace\fR, \fBdie\fR, \fBhandler\fR \fIyour-handler\fR +.IP "SIGNAL LISTS" 4 +.IX Item "SIGNAL LISTS" +\&\fBnormal-signals\fR, \fBerror-signals\fR, \fBold-interface-signals\fR +.IP OTHER 4 +.IX Item "OTHER" +\&\fBuntrapped\fR, \fBany\fR, \fIsignal\fR, \fInumber\fR +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.SS "sort \- perl pragma to control \fBsort()\fP behaviour" +.IX Subsection "sort - perl pragma to control sort() behaviour" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +.SS "stable \- Experimental features made easy, once we know they're stable" +.IX Subsection "stable - Experimental features made easy, once we know they're stable" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`bitwise\*(C'\fR \- stable as of perl 5.22, available via stable 0.031, \f(CW\*(C`isa\*(C'\fR \- +stable as of perl 5.32, available via stable 0.031, \f(CW\*(C`lexical_subs\*(C'\fR \- +stable as of perl 5.22, available via stable 0.031, \f(CW\*(C`postderef\*(C'\fR \- stable +as of perl 5.20, available via stable 0.031 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "strict \- Perl pragma to restrict unsafe constructs" +.IX Subsection "strict - Perl pragma to restrict unsafe constructs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`strict refs\*(C'\fR, \f(CW\*(C`strict vars\*(C'\fR, \f(CW\*(C`strict subs\*(C'\fR +.IP HISTORY 4 +.IX Item "HISTORY" +.SS "subs \- Perl pragma to predeclare subroutine names" +.IX Subsection "subs - Perl pragma to predeclare subroutine names" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "threads \- Perl interpreter-based threads" +.IX Subsection "threads - Perl interpreter-based threads" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP WARNING 4 +.IX Item "WARNING" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$thr\fR = threads\->create(FUNCTION, ARGS), \f(CW$thr\fR\->\fBjoin()\fR, \f(CW$thr\fR\->\fBdetach()\fR, +threads\->\fBdetach()\fR, threads\->\fBself()\fR, \f(CW$thr\fR\->\fBtid()\fR, threads\->\fBtid()\fR, "$thr", +threads\->object($tid), threads\->\fByield()\fR, threads\->\fBlist()\fR, +threads\->list(threads::all), threads\->list(threads::running), +threads\->list(threads::joinable), \f(CW$thr1\fR\->equal($thr2), async BLOCK;, +\&\f(CW$thr\fR\->\fBerror()\fR, \f(CW$thr\fR\->\fB_handle()\fR, threads\->\fB_handle()\fR +.IP "EXITING A THREAD" 4 +.IX Item "EXITING A THREAD" +threads\->\fBexit()\fR, threads\->exit(status), \fBdie()\fR, exit(status), use threads +\&'exit' => 'threads_only', threads\->create({'exit' => 'thread_only'}, ...), +\&\f(CW$thr\fR\->set_thread_exit_only(boolean), threads\->set_thread_exit_only(boolean) +.IP "THREAD STATE" 4 +.IX Item "THREAD STATE" +\&\f(CW$thr\fR\->\fBis_running()\fR, \f(CW$thr\fR\->\fBis_joinable()\fR, \f(CW$thr\fR\->\fBis_detached()\fR, +threads\->\fBis_detached()\fR +.IP "THREAD CONTEXT" 4 +.IX Item "THREAD CONTEXT" +.RS 4 +.PD 0 +.IP "Explicit context" 4 +.IX Item "Explicit context" +.IP "Implicit context" 4 +.IX Item "Implicit context" +.ie n .IP $thr\->\fBwantarray()\fR 4 +.el .IP \f(CW$thr\fR\->\fBwantarray()\fR 4 +.IX Item "$thr->wantarray()" +.IP threads\->\fBwantarray()\fR 4 +.IX Item "threads->wantarray()" +.RE +.RS 4 +.RE +.IP "THREAD STACK SIZE" 4 +.IX Item "THREAD STACK SIZE" +.PD +threads\->\fBget_stack_size()\fR;, \f(CW$size\fR = \f(CW$thr\fR\->\fBget_stack_size()\fR;, \f(CW$old_size\fR = +threads\->set_stack_size($new_size);, use threads ('stack_size' => VALUE);, +\&\f(CW$ENV\fR{'PERL5_ITHREADS_STACK_SIZE'}, threads\->create({'stack_size' => VALUE}, +FUNCTION, ARGS), \f(CW$thr2\fR = \f(CW$thr1\fR\->create(FUNCTION, ARGS) +.IP "THREAD SIGNALLING" 4 +.IX Item "THREAD SIGNALLING" +\&\f(CW$thr\fR\->kill('SIG...'); +.IP WARNINGS 4 +.IX Item "WARNINGS" +Perl exited with active threads:, Thread creation failed: pthread_create +returned #, Thread # terminated abnormally: .., Using minimum thread stack +size of #, Thread creation failed: pthread_attr_setstacksize(\fISIZE\fR) +returned 22 +.IP ERRORS 4 +.IX Item "ERRORS" +This Perl not built to support threads, Cannot change stack size of an +existing thread, Cannot signal threads without safe signals, Unrecognized +signal name: .. +.IP "BUGS AND LIMITATIONS" 4 +.IX Item "BUGS AND LIMITATIONS" +Thread-safe modules, Using non-thread-safe modules, Memory consumption, +Current working directory, Locales, Environment variables, Catching +signals, Parent-child threads, Unsafe signals, Perl has been built with +\&\f(CW\*(C`PERL_OLD_SIGNALS\*(C'\fR (see \f(CW\*(C`perl\ \-V\*(C'\fR), The environment variable +\&\f(CW\*(C`PERL_SIGNALS\*(C'\fR is set to \f(CW\*(C`unsafe\*(C'\fR (see "PERL_SIGNALS" in perlrun), The +module Perl::Unsafe::Signals is used, Identity of objects returned from +threads, Returning blessed objects from threads, END blocks in threads, +Open directory handles, Detached threads and global destruction, Perl Bugs +and the CPAN Version of threads +.IP REQUIREMENTS 4 +.IX Item "REQUIREMENTS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.PD +.SS "threads::shared \- Perl extension for sharing data structures between threads" +.IX Subsection "threads::shared - Perl extension for sharing data structures between threads" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORT 4 +.IX Item "EXPORT" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +share VARIABLE, shared_clone REF, is_shared VARIABLE, lock VARIABLE, +cond_wait VARIABLE, cond_wait CONDVAR, LOCKVAR, cond_timedwait VARIABLE, +ABS_TIMEOUT, cond_timedwait CONDVAR, ABS_TIMEOUT, LOCKVAR, cond_signal +VARIABLE, cond_broadcast VARIABLE +.IP OBJECTS 4 +.IX Item "OBJECTS" +.PD 0 +.IP NOTES 4 +.IX Item "NOTES" +.IP WARNINGS 4 +.IX Item "WARNINGS" +.PD +\&\fBcond_broadcast()\fR called on unlocked variable, \fBcond_signal()\fR called on +unlocked variable +.IP "BUGS AND LIMITATIONS" 4 +.IX Item "BUGS AND LIMITATIONS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "utf8 \- Perl pragma to enable/disable UTF\-8 (or UTF-EBCDIC) in source code" +.IX Subsection "utf8 - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Utility functions" 4 +.IX Item "Utility functions" +.PD +\&\f(CW\*(C`$num_octets = utf8::upgrade($string)\*(C'\fR, \f(CW\*(C`$success = +utf8::downgrade($string[, $fail_ok])\*(C'\fR, \f(CWutf8::encode($string)\fR, \f(CW\*(C`$success += utf8::decode($string)\*(C'\fR, \f(CW$unicode = +utf8::native_to_unicode($code_point)\fR, \f(CW$native = +utf8::unicode_to_native($code_point)\fR, \f(CW\*(C`$flag = utf8::is_utf8($string)\*(C'\fR, +\&\f(CW\*(C`$flag = utf8::valid($string)\*(C'\fR +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "vars \- Perl pragma to predeclare global variable names" +.IX Subsection "vars - Perl pragma to predeclare global variable names" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "version \- Perl extension for Version Objects" +.IX Subsection "version - Perl extension for Version Objects" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "TYPES OF VERSION OBJECTS" 4 +.IX Item "TYPES OF VERSION OBJECTS" +.PD +Decimal Versions, Dotted Decimal Versions +.IP "DECLARING VERSIONS" 4 +.IX Item "DECLARING VERSIONS" +.RS 4 +.PD 0 +.IP "How to convert a module from decimal to dotted-decimal" 4 +.IX Item "How to convert a module from decimal to dotted-decimal" +.ie n .IP "How to declare() a dotted-decimal version" 4 +.el .IP "How to \f(CWdeclare()\fR a dotted-decimal version" 4 +.IX Item "How to declare() a dotted-decimal version" +.RE +.RS 4 +.RE +.IP "PARSING AND COMPARING VERSIONS" 4 +.IX Item "PARSING AND COMPARING VERSIONS" +.RS 4 +.ie n .IP "How to parse() a version" 4 +.el .IP "How to \f(CWparse()\fR a version" 4 +.IX Item "How to parse() a version" +.IP "How to check for a legal version string" 4 +.IX Item "How to check for a legal version string" +.PD +\&\f(CWis_lax()\fR, \f(CWis_strict()\fR +.IP "How to compare version objects" 4 +.IX Item "How to compare version objects" +.RE +.RS 4 +.RE +.PD 0 +.IP "OBJECT METHODS" 4 +.IX Item "OBJECT METHODS" +.RS 4 +.IP \fBis_alpha()\fR 4 +.IX Item "is_alpha()" +.IP \fBis_qv()\fR 4 +.IX Item "is_qv()" +.IP \fBnormal()\fR 4 +.IX Item "normal()" +.IP \fBnumify()\fR 4 +.IX Item "numify()" +.IP \fBstringify()\fR 4 +.IX Item "stringify()" +.RE +.RS 4 +.RE +.IP "EXPORTED FUNCTIONS" 4 +.IX Item "EXPORTED FUNCTIONS" +.RS 4 +.IP \fBqv()\fR 4 +.IX Item "qv()" +.IP \fBis_lax()\fR 4 +.IX Item "is_lax()" +.IP \fBis_strict()\fR 4 +.IX Item "is_strict()" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "version::Internals \- Perl extension for Version Objects" +.IX Subsection "version::Internals - Perl extension for Version Objects" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP "WHAT IS A VERSION?" 4 +.IX Item "WHAT IS A VERSION?" +.PD +Decimal versions, Dotted-Decimal versions +.RS 4 +.IP "Decimal Versions" 4 +.IX Item "Decimal Versions" +.PD 0 +.IP "Dotted-Decimal Versions" 4 +.IX Item "Dotted-Decimal Versions" +.IP "Alpha Versions" 4 +.IX Item "Alpha Versions" +.IP "Regular Expressions for Version Parsing" 4 +.IX Item "Regular Expressions for Version Parsing" +.PD +\&\f(CW$version::LAX\fR, \f(CW$version::STRICT\fR, v1.234.5 +.RE +.RS 4 +.RE +.IP "IMPLEMENTATION DETAILS" 4 +.IX Item "IMPLEMENTATION DETAILS" +.RS 4 +.PD 0 +.IP "Equivalence between Decimal and Dotted-Decimal Versions" 4 +.IX Item "Equivalence between Decimal and Dotted-Decimal Versions" +.IP "Quoting Rules" 4 +.IX Item "Quoting Rules" +.IP "What about v\-strings?" 4 +.IX Item "What about v-strings?" +.IP "Version Object Internals" 4 +.IX Item "Version Object Internals" +.PD +original, qv, alpha, version +.IP "Replacement UNIVERSAL::VERSION" 4 +.IX Item "Replacement UNIVERSAL::VERSION" +.RE +.RS 4 +.RE +.PD 0 +.IP "USAGE DETAILS" 4 +.IX Item "USAGE DETAILS" +.RS 4 +.IP "Using modules that use version.pm" 4 +.IX Item "Using modules that use version.pm" +.PD +Decimal versions always work, Dotted-Decimal version work sometimes +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\fBnew()\fR, \fBqv()\fR, Normal Form, Numification, Stringification, Comparison +operators, Logical Operators +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "vmsish \- Perl pragma to control VMS-specific language features" +.IX Subsection "vmsish - Perl pragma to control VMS-specific language features" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`vmsish status\*(C'\fR, \f(CW\*(C`vmsish exit\*(C'\fR, \f(CW\*(C`vmsish time\*(C'\fR, \f(CW\*(C`vmsish hushed\*(C'\fR +.SS "warnings \- Perl pragma to control optional warnings" +.IX Subsection "warnings - Perl pragma to control optional warnings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Default Warnings and Optional Warnings" 4 +.IX Item "Default Warnings and Optional Warnings" +.IP """Negative warnings""" 4 +.IX Item """Negative warnings""" +.ie n .IP "What's wrong with \fB\-w\fR and $^W" 4 +.el .IP "What's wrong with \fB\-w\fR and \f(CW$^W\fR" 4 +.IX Item "What's wrong with -w and $^W" +.IP "Controlling Warnings from the Command Line" 4 +.IX Item "Controlling Warnings from the Command Line" +.PD +\&\fB\-w\fR , \fB\-W\fR , \fB\-X\fR +.IX Xref "-w -W -X" +.IP "Backward Compatibility" 4 +.IX Item "Backward Compatibility" +.PD 0 +.IP "Category Hierarchy" 4 +.IX Xref "warning, categories" +.IX Item "Category Hierarchy" +.IP "Fatal Warnings" 4 +.IX Xref "warning, fatal" +.IX Item "Fatal Warnings" +.IP "Reporting Warnings from a Module" 4 +.IX Xref "warning, reporting warning, registering" +.IX Item "Reporting Warnings from a Module" +.RE +.RS 4 +.RE +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +use warnings::register, \fBwarnings::enabled()\fR, warnings::enabled($category), +warnings::enabled($object), warnings::enabled_at_level($category, \f(CW$level\fR), +\&\fBwarnings::fatal_enabled()\fR, warnings::fatal_enabled($category), +warnings::fatal_enabled($object), +warnings::fatal_enabled_at_level($category, \f(CW$level\fR), +warnings::warn($message), warnings::warn($category, \f(CW$message\fR), +warnings::warn($object, \f(CW$message\fR), warnings::warn_at_level($category, +\&\f(CW$level\fR, \f(CW$message\fR), warnings::warnif($message), warnings::warnif($category, +\&\f(CW$message\fR), warnings::warnif($object, \f(CW$message\fR), +warnings::warnif_at_level($category, \f(CW$level\fR, \f(CW$message\fR), +warnings::register_categories(@names) +.SS "warnings::register \- warnings import function" +.IX Subsection "warnings::register - warnings import function" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SH "MODULE DOCUMENTATION" +.IX Header "MODULE DOCUMENTATION" +.SS "AnyDBM_File \- provide framework for multiple DBMs" +.IX Subsection "AnyDBM_File - provide framework for multiple DBMs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "DBM Comparisons" 4 +.IX Item "DBM Comparisons" +.PD +[0], [1], [2], [3] +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "App::Cpan \- easily interact with CPAN from the command line" +.IX Subsection "App::Cpan - easily interact with CPAN from the command line" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Options 4 +.IX Item "Options" +.PD +\&\-a, \-A module [ module ... ], \-c module, \-C module [ module ... ], \-D +module [ module ... ], \-f, \-F, \-g module [ module ... ], \-G module [ module +\&... ], \-h, \-i module [ module ... ], \-I, \-j Config.pm, \-J, \-l, \-L author [ +author ... ], \-m, \-M mirror1,mirror2,.., \-n, \-O, \-p, \-P, \-r, \-s, \-t module +[ module ... ], \-T, \-u, \-v, \-V, \-w, \-x module [ module ... ], \-\fIX\fR +.IP Examples 4 +.IX Item "Examples" +.PD 0 +.IP "Environment variables" 4 +.IX Item "Environment variables" +.PD +NONINTERACTIVE_TESTING, PERL_MM_USE_DEFAULT, CPAN_OPTS, +CPANSCRIPT_LOGLEVEL, GIT_COMMAND +.IP Methods 4 +.IX Item "Methods" +.RE +.RS 4 +.RE +.PP +run( ARGS ) +.IP "EXIT VALUES" 4 +.IX Item "EXIT VALUES" +.PD 0 +.IP "TO DO" 4 +.IX Item "TO DO" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "SOURCE AVAILABILITY" 4 +.IX Item "SOURCE AVAILABILITY" +.IP CREDITS 4 +.IX Item "CREDITS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.ie n .SS "App::Prove \- Implements the ""prove"" command." +.el .SS "App::Prove \- Implements the \f(CWprove\fP command." +.IX Subsection "App::Prove - Implements the prove command." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP Attributes 4 +.IX Item "Attributes" +.PD +\&\f(CW\*(C`archive\*(C'\fR, \f(CW\*(C`argv\*(C'\fR, \f(CW\*(C`backwards\*(C'\fR, \f(CW\*(C`blib\*(C'\fR, \f(CW\*(C`color\*(C'\fR, \f(CW\*(C`directives\*(C'\fR, +\&\f(CW\*(C`dry\*(C'\fR, \f(CW\*(C`exec\*(C'\fR, \f(CW\*(C`extensions\*(C'\fR, \f(CW\*(C`failures\*(C'\fR, \f(CW\*(C`comments\*(C'\fR, \f(CW\*(C`formatter\*(C'\fR, +\&\f(CW\*(C`harness\*(C'\fR, \f(CW\*(C`ignore_exit\*(C'\fR, \f(CW\*(C`includes\*(C'\fR, \f(CW\*(C`jobs\*(C'\fR, \f(CW\*(C`lib\*(C'\fR, \f(CW\*(C`merge\*(C'\fR, +\&\f(CW\*(C`modules\*(C'\fR, \f(CW\*(C`parse\*(C'\fR, \f(CW\*(C`plugins\*(C'\fR, \f(CW\*(C`quiet\*(C'\fR, \f(CW\*(C`really_quiet\*(C'\fR, \f(CW\*(C`recurse\*(C'\fR, +\&\f(CW\*(C`rules\*(C'\fR, \f(CW\*(C`show_count\*(C'\fR, \f(CW\*(C`show_help\*(C'\fR, \f(CW\*(C`show_man\*(C'\fR, \f(CW\*(C`show_version\*(C'\fR, +\&\f(CW\*(C`shuffle\*(C'\fR, \f(CW\*(C`state\*(C'\fR, \f(CW\*(C`state_class\*(C'\fR, \f(CW\*(C`taint_fail\*(C'\fR, \f(CW\*(C`taint_warn\*(C'\fR, +\&\f(CW\*(C`test_args\*(C'\fR, \f(CW\*(C`timer\*(C'\fR, \f(CW\*(C`verbose\*(C'\fR, \f(CW\*(C`warnings_fail\*(C'\fR, \f(CW\*(C`warnings_warn\*(C'\fR, +\&\f(CW\*(C`tapversion\*(C'\fR, \f(CW\*(C`trap\*(C'\fR +.IP PLUGINS 4 +.IX Item "PLUGINS" +.RS 4 +.PD 0 +.IP "Sample Plugin" 4 +.IX Item "Sample Plugin" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.ie n .SS "App::Prove::State \- State storage for the ""prove"" command." +.el .SS "App::Prove::State \- State storage for the \f(CWprove\fP command." +.IX Subsection "App::Prove::State - State storage for the prove command." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`store\*(C'\fR, \f(CW\*(C`extensions\*(C'\fR (optional), \f(CW\*(C`result_class\*(C'\fR (optional) +.RE +.RS 4 +.RE +.ie n .IP """result_class""" 4 +.el .IP \f(CWresult_class\fR 4 +.IX Item "result_class" +.PD 0 +.ie n .IP """extensions""" 4 +.el .IP \f(CWextensions\fR 4 +.IX Item "extensions" +.ie n .IP """results""" 4 +.el .IP \f(CWresults\fR 4 +.IX Item "results" +.ie n .IP """commit""" 4 +.el .IP \f(CWcommit\fR 4 +.IX Item "commit" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PD +\&\f(CW\*(C`last\*(C'\fR, \f(CW\*(C`failed\*(C'\fR, \f(CW\*(C`passed\*(C'\fR, \f(CW\*(C`all\*(C'\fR, \f(CW\*(C`hot\*(C'\fR, \f(CW\*(C`todo\*(C'\fR, \f(CW\*(C`slow\*(C'\fR, \f(CW\*(C`fast\*(C'\fR, +\&\f(CW\*(C`new\*(C'\fR, \f(CW\*(C`old\*(C'\fR, \f(CW\*(C`save\*(C'\fR +.SS "App::Prove::State::Result \- Individual test suite results." +.IX Subsection "App::Prove::State::Result - Individual test suite results." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.ie n .IP """state_version""" 4 +.el .IP \f(CWstate_version\fR 4 +.IX Item "state_version" +.ie n .IP """test_class""" 4 +.el .IP \f(CWtest_class\fR 4 +.IX Item "test_class" +.PD +.SS "App::Prove::State::Result::Test \- Individual test results." +.IX Subsection "App::Prove::State::Result::Test - Individual test results." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PD +.SS "Archive::Tar \- module for manipulations of tar archives" +.IX Subsection "Archive::Tar - module for manipulations of tar archives" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Object Methods" 4 +.IX Item "Object Methods" +.RS 4 +.ie n .IP "Archive::Tar\->new( [$file, $compressed] )" 4 +.el .IP "Archive::Tar\->new( [$file, \f(CW$compressed\fR] )" 4 +.IX Item "Archive::Tar->new( [$file, $compressed] )" +.RE +.RS 4 +.RE +.ie n .IP "$tar\->read ( $filename|$handle, [$compressed, {opt => 'val'}] )" 4 +.el .IP "\f(CW$tar\fR\->read ( \f(CW$filename\fR|$handle, [$compressed, {opt => 'val'}] )" 4 +.IX Item "$tar->read ( $filename|$handle, [$compressed, {opt => 'val'}] )" +.PD +limit, filter, md5, extract +.ie n .IP "$tar\->contains_file( $filename )" 4 +.el .IP "\f(CW$tar\fR\->contains_file( \f(CW$filename\fR )" 4 +.IX Item "$tar->contains_file( $filename )" +.PD 0 +.ie n .IP "$tar\->extract( [@filenames] )" 4 +.el .IP "\f(CW$tar\fR\->extract( [@filenames] )" 4 +.IX Item "$tar->extract( [@filenames] )" +.ie n .IP "$tar\->extract_file( $file, [$extract_path] )" 4 +.el .IP "\f(CW$tar\fR\->extract_file( \f(CW$file\fR, [$extract_path] )" 4 +.IX Item "$tar->extract_file( $file, [$extract_path] )" +.ie n .IP "$tar\->list_files( [\e@properties] )" 4 +.el .IP "\f(CW$tar\fR\->list_files( [\e@properties] )" 4 +.IX Item "$tar->list_files( [@properties] )" +.ie n .IP "$tar\->get_files( [@filenames] )" 4 +.el .IP "\f(CW$tar\fR\->get_files( [@filenames] )" 4 +.IX Item "$tar->get_files( [@filenames] )" +.ie n .IP "$tar\->get_content( $file )" 4 +.el .IP "\f(CW$tar\fR\->get_content( \f(CW$file\fR )" 4 +.IX Item "$tar->get_content( $file )" +.ie n .IP "$tar\->replace_content( $file, $content )" 4 +.el .IP "\f(CW$tar\fR\->replace_content( \f(CW$file\fR, \f(CW$content\fR )" 4 +.IX Item "$tar->replace_content( $file, $content )" +.ie n .IP "$tar\->rename( $file, $new_name )" 4 +.el .IP "\f(CW$tar\fR\->rename( \f(CW$file\fR, \f(CW$new_name\fR )" 4 +.IX Item "$tar->rename( $file, $new_name )" +.ie n .IP "$tar\->chmod( $file, $mode )" 4 +.el .IP "\f(CW$tar\fR\->chmod( \f(CW$file\fR, \f(CW$mode\fR )" 4 +.IX Item "$tar->chmod( $file, $mode )" +.ie n .IP "$tar\->chown( $file, $uname [, $gname] )" 4 +.el .IP "\f(CW$tar\fR\->chown( \f(CW$file\fR, \f(CW$uname\fR [, \f(CW$gname\fR] )" 4 +.IX Item "$tar->chown( $file, $uname [, $gname] )" +.ie n .IP "$tar\->remove (@filenamelist)" 4 +.el .IP "\f(CW$tar\fR\->remove (@filenamelist)" 4 +.IX Item "$tar->remove (@filenamelist)" +.ie n .IP $tar\->clear 4 +.el .IP \f(CW$tar\fR\->clear 4 +.IX Item "$tar->clear" +.ie n .IP "$tar\->write ( [$file, $compressed, $prefix] )" 4 +.el .IP "\f(CW$tar\fR\->write ( [$file, \f(CW$compressed\fR, \f(CW$prefix\fR] )" 4 +.IX Item "$tar->write ( [$file, $compressed, $prefix] )" +.ie n .IP "$tar\->add_files( @filenamelist )" 4 +.el .IP "\f(CW$tar\fR\->add_files( \f(CW@filenamelist\fR )" 4 +.IX Item "$tar->add_files( @filenamelist )" +.ie n .IP "$tar\->add_data ( $filename, $data, [$opthashref] )" 4 +.el .IP "\f(CW$tar\fR\->add_data ( \f(CW$filename\fR, \f(CW$data\fR, [$opthashref] )" 4 +.IX Item "$tar->add_data ( $filename, $data, [$opthashref] )" +.PD +FILE, HARDLINK, SYMLINK, CHARDEV, BLOCKDEV, DIR, FIFO, SOCKET +.ie n .IP "$tar\->error( [$BOOL] )" 4 +.el .IP "\f(CW$tar\fR\->error( [$BOOL] )" 4 +.IX Item "$tar->error( [$BOOL] )" +.PD 0 +.ie n .IP "$tar\->setcwd( $cwd );" 4 +.el .IP "\f(CW$tar\fR\->setcwd( \f(CW$cwd\fR );" 4 +.IX Item "$tar->setcwd( $cwd );" +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RS 4 +.ie n .IP "Archive::Tar\->create_archive($file, $compressed, @filelist)" 4 +.el .IP "Archive::Tar\->create_archive($file, \f(CW$compressed\fR, \f(CW@filelist\fR)" 4 +.IX Item "Archive::Tar->create_archive($file, $compressed, @filelist)" +.RE +.RS 4 +.RE +.ie n .IP "Archive::Tar\->iter( $filename, [ $compressed, {opt => $val} ] )" 4 +.el .IP "Archive::Tar\->iter( \f(CW$filename\fR, [ \f(CW$compressed\fR, {opt => \f(CW$val\fR} ] )" 4 +.IX Item "Archive::Tar->iter( $filename, [ $compressed, {opt => $val} ] )" +.ie n .IP "Archive::Tar\->list_archive($file, $compressed, [\e@properties])" 4 +.el .IP "Archive::Tar\->list_archive($file, \f(CW$compressed\fR, [\e@properties])" 4 +.IX Item "Archive::Tar->list_archive($file, $compressed, [@properties])" +.ie n .IP "Archive::Tar\->extract_archive($file, $compressed)" 4 +.el .IP "Archive::Tar\->extract_archive($file, \f(CW$compressed\fR)" 4 +.IX Item "Archive::Tar->extract_archive($file, $compressed)" +.ie n .IP "$bool = Archive::Tar\->has_io_string" 4 +.el .IP "\f(CW$bool\fR = Archive::Tar\->has_io_string" 4 +.IX Item "$bool = Archive::Tar->has_io_string" +.ie n .IP "$bool = Archive::Tar\->has_perlio" 4 +.el .IP "\f(CW$bool\fR = Archive::Tar\->has_perlio" 4 +.IX Item "$bool = Archive::Tar->has_perlio" +.ie n .IP "$bool = Archive::Tar\->has_zlib_support" 4 +.el .IP "\f(CW$bool\fR = Archive::Tar\->has_zlib_support" 4 +.IX Item "$bool = Archive::Tar->has_zlib_support" +.ie n .IP "$bool = Archive::Tar\->has_bzip2_support" 4 +.el .IP "\f(CW$bool\fR = Archive::Tar\->has_bzip2_support" 4 +.IX Item "$bool = Archive::Tar->has_bzip2_support" +.ie n .IP "$bool = Archive::Tar\->has_xz_support" 4 +.el .IP "\f(CW$bool\fR = Archive::Tar\->has_xz_support" 4 +.IX Item "$bool = Archive::Tar->has_xz_support" +.IP Archive::Tar\->can_handle_compressed_files 4 +.IX Item "Archive::Tar->can_handle_compressed_files" +.IP "GLOBAL VARIABLES" 4 +.IX Item "GLOBAL VARIABLES" +.RS 4 +.ie n .IP $Archive::Tar::FOLLOW_SYMLINK 4 +.el .IP \f(CW$Archive::Tar::FOLLOW_SYMLINK\fR 4 +.IX Item "$Archive::Tar::FOLLOW_SYMLINK" +.ie n .IP $Archive::Tar::CHOWN 4 +.el .IP \f(CW$Archive::Tar::CHOWN\fR 4 +.IX Item "$Archive::Tar::CHOWN" +.ie n .IP $Archive::Tar::CHMOD 4 +.el .IP \f(CW$Archive::Tar::CHMOD\fR 4 +.IX Item "$Archive::Tar::CHMOD" +.ie n .IP $Archive::Tar::SAME_PERMISSIONS 4 +.el .IP \f(CW$Archive::Tar::SAME_PERMISSIONS\fR 4 +.IX Item "$Archive::Tar::SAME_PERMISSIONS" +.ie n .IP $Archive::Tar::DO_NOT_USE_PREFIX 4 +.el .IP \f(CW$Archive::Tar::DO_NOT_USE_PREFIX\fR 4 +.IX Item "$Archive::Tar::DO_NOT_USE_PREFIX" +.ie n .IP $Archive::Tar::DEBUG 4 +.el .IP \f(CW$Archive::Tar::DEBUG\fR 4 +.IX Item "$Archive::Tar::DEBUG" +.ie n .IP $Archive::Tar::WARN 4 +.el .IP \f(CW$Archive::Tar::WARN\fR 4 +.IX Item "$Archive::Tar::WARN" +.ie n .IP $Archive::Tar::error 4 +.el .IP \f(CW$Archive::Tar::error\fR 4 +.IX Item "$Archive::Tar::error" +.ie n .IP $Archive::Tar::INSECURE_EXTRACT_MODE 4 +.el .IP \f(CW$Archive::Tar::INSECURE_EXTRACT_MODE\fR 4 +.IX Item "$Archive::Tar::INSECURE_EXTRACT_MODE" +.ie n .IP $Archive::Tar::HAS_PERLIO 4 +.el .IP \f(CW$Archive::Tar::HAS_PERLIO\fR 4 +.IX Item "$Archive::Tar::HAS_PERLIO" +.ie n .IP $Archive::Tar::HAS_IO_STRING 4 +.el .IP \f(CW$Archive::Tar::HAS_IO_STRING\fR 4 +.IX Item "$Archive::Tar::HAS_IO_STRING" +.ie n .IP $Archive::Tar::ZERO_PAD_NUMBERS 4 +.el .IP \f(CW$Archive::Tar::ZERO_PAD_NUMBERS\fR 4 +.IX Item "$Archive::Tar::ZERO_PAD_NUMBERS" +.IP "Tuning the way RESOLVE_SYMLINK will works" 4 +.IX Item "Tuning the way RESOLVE_SYMLINK will works" +.RE +.RS 4 +.RE +.IP FAQ 4 +.IX Item "FAQ" +.PD +What's the minimum perl version required to run Archive::Tar?, Isn't +Archive::Tar slow?, Isn't Archive::Tar heavier on memory than /bin/tar?, +Can you lazy-load data instead?, How much memory will an X kb tar file +need?, What do you do with unsupported filetypes in an archive?, I'm using +WinZip, or some other non-POSIX client, and files are not being extracted +properly!, How do I extract only files that have property X from an +archive?, How do I access .tar.Z files?, How do I handle Unicode strings? +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP TODO 4 +.IX Item "TODO" +.PD +Check if passed in handles are open for read/write, Allow archives to be +passed in as string, Facilitate processing an opened filehandle of a +compressed archive +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +The GNU tar specification, The PAX format specification, A comparison of +GNU and POSIX tar standards; +\&\f(CW\*(C`http://www.delorie.com/gnu/docs/tar/tar_114.html\*(C'\fR, GNU tar intends to +switch to POSIX compatibility, A Comparison between various tar +implementations +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Archive::Tar::File \- a subclass for in-memory extracted file from Archive::Tar" +.IX Subsection "Archive::Tar::File - a subclass for in-memory extracted file from Archive::Tar" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Accessors 4 +.IX Item "Accessors" +.PD +name, mode, uid, gid, size, mtime, chksum, type, linkname, magic, version, +uname, gname, devmajor, devminor, prefix, raw +.RE +.RS 4 +.RE +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.PD 0 +.ie n .IP "Archive::Tar::File\->new( file => $path )" 4 +.el .IP "Archive::Tar::File\->new( file => \f(CW$path\fR )" 4 +.IX Item "Archive::Tar::File->new( file => $path )" +.ie n .IP "Archive::Tar::File\->new( data => $path, $data, $opt )" 4 +.el .IP "Archive::Tar::File\->new( data => \f(CW$path\fR, \f(CW$data\fR, \f(CW$opt\fR )" 4 +.IX Item "Archive::Tar::File->new( data => $path, $data, $opt )" +.ie n .IP "Archive::Tar::File\->new( chunk => $chunk )" 4 +.el .IP "Archive::Tar::File\->new( chunk => \f(CW$chunk\fR )" 4 +.IX Item "Archive::Tar::File->new( chunk => $chunk )" +.RE +.RS 4 +.RE +.ie n .IP "$bool = $file\->extract( [ $alternative_name ] )" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->extract( [ \f(CW$alternative_name\fR ] )" 4 +.IX Item "$bool = $file->extract( [ $alternative_name ] )" +.ie n .IP "$path = $file\->full_path" 4 +.el .IP "\f(CW$path\fR = \f(CW$file\fR\->full_path" 4 +.IX Item "$path = $file->full_path" +.ie n .IP "$bool = $file\->validate" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->validate" 4 +.IX Item "$bool = $file->validate" +.ie n .IP "$bool = $file\->has_content" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->has_content" 4 +.IX Item "$bool = $file->has_content" +.ie n .IP "$content = $file\->get_content" 4 +.el .IP "\f(CW$content\fR = \f(CW$file\fR\->get_content" 4 +.IX Item "$content = $file->get_content" +.ie n .IP "$cref = $file\->get_content_by_ref" 4 +.el .IP "\f(CW$cref\fR = \f(CW$file\fR\->get_content_by_ref" 4 +.IX Item "$cref = $file->get_content_by_ref" +.ie n .IP "$bool = $file\->replace_content( $content )" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->replace_content( \f(CW$content\fR )" 4 +.IX Item "$bool = $file->replace_content( $content )" +.ie n .IP "$bool = $file\->rename( $new_name )" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->rename( \f(CW$new_name\fR )" 4 +.IX Item "$bool = $file->rename( $new_name )" +.ie n .IP "$bool = $file\->chmod $mode)" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->chmod \f(CW$mode\fR)" 4 +.IX Item "$bool = $file->chmod $mode)" +.ie n .IP "$bool = $file\->chown( $user [, $group])" 4 +.el .IP "\f(CW$bool\fR = \f(CW$file\fR\->chown( \f(CW$user\fR [, \f(CW$group\fR])" 4 +.IX Item "$bool = $file->chown( $user [, $group])" +.IP "Convenience methods" 4 +.IX Item "Convenience methods" +.PD +\&\f(CW$file\fR\->is_file, \f(CW$file\fR\->is_dir, \f(CW$file\fR\->is_hardlink, \f(CW$file\fR\->is_symlink, +\&\f(CW$file\fR\->is_chardev, \f(CW$file\fR\->is_blockdev, \f(CW$file\fR\->is_fifo, \f(CW$file\fR\->is_socket, +\&\f(CW$file\fR\->is_longlink, \f(CW$file\fR\->is_label, \f(CW$file\fR\->is_unknown +.SS "Attribute::Handlers \- Simpler definition of attribute handlers" +.IX Subsection "Attribute::Handlers - Simpler definition of attribute handlers" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +[0], [1], [2], [3], [4], [5], [6], [7] +.RS 4 +.IP "Typed lexicals" 4 +.IX Item "Typed lexicals" +.PD 0 +.IP "Type-specific attribute handlers" 4 +.IX Item "Type-specific attribute handlers" +.IP "Non-interpretive attribute handlers" 4 +.IX Item "Non-interpretive attribute handlers" +.IP "Phase-specific attribute handlers" 4 +.IX Item "Phase-specific attribute handlers" +.ie n .IP "Attributes as ""tie"" interfaces" 4 +.el .IP "Attributes as \f(CWtie\fR interfaces" 4 +.IX Item "Attributes as tie interfaces" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP "UTILITY FUNCTIONS" 4 +.IX Item "UTILITY FUNCTIONS" +.PD +findsym +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +\&\f(CW\*(C`Bad attribute type: ATTR(%s)\*(C'\fR, \f(CW\*(C`Attribute handler %s doesn\*(Aqt handle %s +attributes\*(C'\fR, \f(CW\*(C`Declaration of %s attribute in package %s may clash with +future reserved word\*(C'\fR, \f(CW\*(C`Can\*(Aqt have two ATTR specifiers on one subroutine\*(C'\fR, +\&\f(CW\*(C`Can\*(Aqt autotie a %s\*(C'\fR, \f(CW\*(C`Internal error: %s symbol went missing\*(C'\fR, \f(CW\*(C`Won\*(Aqt +be able to apply END handler\*(C'\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "AutoLoader \- load subroutines only on demand" +.IX Subsection "AutoLoader - load subroutines only on demand" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Subroutine Stubs" 4 +.IX Item "Subroutine Stubs" +.IP "Using \fBAutoLoader\fR's AUTOLOAD Subroutine" 4 +.IX Item "Using AutoLoader's AUTOLOAD Subroutine" +.IP "Overriding \fBAutoLoader\fR's AUTOLOAD Subroutine" 4 +.IX Item "Overriding AutoLoader's AUTOLOAD Subroutine" +.IP "Package Lexicals" 4 +.IX Item "Package Lexicals" +.IP "Not Using AutoLoader" 4 +.IX Item "Not Using AutoLoader" +.IP "\fBAutoLoader\fR vs. \fBSelfLoader\fR" 4 +.IX Item "AutoLoader vs. SelfLoader" +.IP "Forcing AutoLoader to Load a Function" 4 +.IX Item "Forcing AutoLoader to Load a Function" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "AutoSplit \- split a package for autoloading" +.IX Subsection "AutoSplit - split a package for autoloading" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$keep\fR, \f(CW$check\fR, \f(CW$modtime\fR +.RS 4 +.IP "Multiple packages" 4 +.IX Item "Multiple packages" +.RE +.RS 4 +.RE +.PD 0 +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "B \- The Perl Compiler Backend" +.IX Subsection "B - The Perl Compiler Backend" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OVERVIEW 4 +.IX Item "OVERVIEW" +.IP "Utility Functions" 4 +.IX Item "Utility Functions" +.RS 4 +.ie n .IP "Functions Returning ""B::SV"", ""B::AV"", ""B::HV"", and ""B::CV"" objects" 4 +.el .IP "Functions Returning \f(CWB::SV\fR, \f(CWB::AV\fR, \f(CWB::HV\fR, and \f(CWB::CV\fR objects" 4 +.IX Item "Functions Returning B::SV, B::AV, B::HV, and B::CV objects" +.PD +sv_undef, sv_yes, sv_no, svref_2object(SVREF), amagic_generation, init_av, +check_av, unitcheck_av, begin_av, end_av, comppadlist, regex_padav, main_cv +.IP "Functions for Examining the Symbol Table" 4 +.IX Item "Functions for Examining the Symbol Table" +walksymtable(SYMREF, METHOD, RECURSE, PREFIX) +.ie n .IP "Functions Returning ""B::OP"" objects or for walking op trees" 4 +.el .IP "Functions Returning \f(CWB::OP\fR objects or for walking op trees" 4 +.IX Item "Functions Returning B::OP objects or for walking op trees" +main_root, main_start, walkoptree(OP, METHOD), walkoptree_debug(DEBUG) +.IP "Miscellaneous Utility Functions" 4 +.IX Item "Miscellaneous Utility Functions" +ppname(OPNUM), hash(STR), cast_I32(I), minus_c, cstring(STR), +perlstring(STR), safename(STR), class(OBJ), threadsv_names +.IP "Exported utility variables" 4 +.IX Item "Exported utility variables" +\&\f(CW@optype\fR, \f(CW@specialsv_name\fR +.RE +.RS 4 +.RE +.IP "OVERVIEW OF CLASSES" 4 +.IX Item "OVERVIEW OF CLASSES" +.RS 4 +.PD 0 +.IP "SV-RELATED CLASSES" 4 +.IX Item "SV-RELATED CLASSES" +.IP "B::SV Methods" 4 +.IX Item "B::SV Methods" +.PD +REFCNT, FLAGS, IsBOOL, object_2svref, TRUE, TRUE_nomg +.IP "B::IV Methods" 4 +.IX Item "B::IV Methods" +IV, IVX, UVX, int_value, needs64bits, packiv +.IP "B::NV Methods" 4 +.IX Item "B::NV Methods" +NV, NVX, COP_SEQ_RANGE_LOW, COP_SEQ_RANGE_HIGH +.IP "B::RV Methods" 4 +.IX Item "B::RV Methods" +RV +.IP "B::PV Methods" 4 +.IX Item "B::PV Methods" +PV, RV, PVX, CUR, LEN +.IP "B::PVMG Methods" 4 +.IX Item "B::PVMG Methods" +MAGIC, SvSTASH +.IP "B::MAGIC Methods" 4 +.IX Item "B::MAGIC Methods" +MOREMAGIC, precomp, PRIVATE, TYPE, FLAGS, OBJ, PTR, REGEX +.IP "B::INVLIST Methods" 4 +.IX Item "B::INVLIST Methods" +prev_index, is_offset, array_len, get_invlist_array +.IP "B::PVLV Methods" 4 +.IX Item "B::PVLV Methods" +TARGOFF, TARGLEN, TYPE, TARG +.IP "B::BM Methods" 4 +.IX Item "B::BM Methods" +USEFUL, PREVIOUS, RARE, TABLE +.IP "B::REGEXP Methods" 4 +.IX Item "B::REGEXP Methods" +REGEX, precomp, qr_anoncv, compflags +.IP "B::GV Methods" 4 +.IX Item "B::GV Methods" +is_empty, NAME, SAFENAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, +LINE, FILE, FILEGV, GvREFCNT, FLAGS, GPFLAGS +.IP "B::IO Methods" 4 +.IX 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, IsSTD +.IP "B::AV Methods" 4 +.IX Item "B::AV Methods" +FILL, MAX, ARRAY, ARRAYelt +.IP "B::CV Methods" 4 +.IX Item "B::CV Methods" +STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, OUTSIDE_SEQ, XSUB, +XSUBANY, CvFLAGS, const_sv, NAME_HEK +.IP "B::HV Methods" 4 +.IX Item "B::HV Methods" +FILL, MAX, KEYS, RITER, NAME, ARRAY +.IP "OP-RELATED CLASSES" 4 +.IX Item "OP-RELATED CLASSES" +.PD 0 +.IP "B::OP Methods" 4 +.IX Item "B::OP Methods" +.PD +next, sibling, parent, name, ppaddr, desc, targ, type, opt, flags, private, +spare +.IP "B::UNOP Method" 4 +.IX Item "B::UNOP Method" +first +.IP "B::UNOP_AUX Methods (since 5.22)" 4 +.IX Item "B::UNOP_AUX Methods (since 5.22)" +aux_list(cv), string(cv) +.IP "B::BINOP Method" 4 +.IX Item "B::BINOP Method" +last +.IP "B::LOGOP Method" 4 +.IX Item "B::LOGOP Method" +other +.IP "B::LISTOP Method" 4 +.IX Item "B::LISTOP Method" +children +.IP "B::PMOP Methods" 4 +.IX Item "B::PMOP Methods" +pmreplroot, pmreplstart, pmflags, precomp, pmoffset, code_list, pmregexp +.IP "B::SVOP Methods" 4 +.IX Item "B::SVOP Methods" +sv, gv +.IP "B::PADOP Method" 4 +.IX Item "B::PADOP Method" +padix +.IP "B::PVOP Method" 4 +.IX Item "B::PVOP Method" +pv +.IP "B::LOOP Methods" 4 +.IX Item "B::LOOP Methods" +redoop, nextop, lastop +.IP "B::COP Methods" 4 +.IX Item "B::COP Methods" +label, stash, stashpv, stashoff (threaded only), file, cop_seq, line, +warnings, io, hints, hints_hash +.IP "B::METHOP Methods (Since Perl 5.22)" 4 +.IX Item "B::METHOP Methods (Since Perl 5.22)" +first, meth_sv +.IP "PAD-RELATED CLASSES" 4 +.IX Item "PAD-RELATED CLASSES" +.PD 0 +.IP "B::PADLIST Methods" 4 +.IX Item "B::PADLIST Methods" +.PD +MAX, ARRAY, ARRAYelt, NAMES, REFCNT, id, outid +.IP "B::PADNAMELIST Methods" 4 +.IX Item "B::PADNAMELIST Methods" +MAX, ARRAY, ARRAYelt, REFCNT +.IP "B::PADNAME Methods" 4 +.IX Item "B::PADNAME Methods" +PV, PVX, LEN, REFCNT, GEN, FLAGS, TYPE, SvSTASH, OURSTASH, PROTOCV, +COP_SEQ_RANGE_LOW, COP_SEQ_RANGE_HIGH, PARENT_PAD_INDEX, +PARENT_FAKELEX_FLAGS, IsUndef +.ie n .IP $B::overlay 4 +.el .IP \f(CW$B::overlay\fR 4 +.IX Item "$B::overlay" +.RE +.RS 4 +.RE +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "B::Concise \- Walk Perl syntax tree, printing concise info about ops" +.IX Subsection "B::Concise - Walk Perl syntax tree, printing concise info about ops" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RS 4 +.IP "Options for Opcode Ordering" 4 +.IX Item "Options for Opcode Ordering" +.PD +\&\fB\-basic\fR, \fB\-exec\fR, \fB\-tree\fR +.IP "Options for Line-Style" 4 +.IX Item "Options for Line-Style" +\&\fB\-concise\fR, \fB\-terse\fR, \fB\-linenoise\fR, \fB\-debug\fR, \fB\-env\fR +.IP "Options for tree-specific formatting" 4 +.IX Item "Options for tree-specific formatting" +\&\fB\-compact\fR, \fB\-loose\fR, \fB\-vt\fR, \fB\-ascii\fR +.IP "Options controlling sequence numbering" 4 +.IX Item "Options controlling sequence numbering" +\&\fB\-base\fR\fIn\fR, \fB\-bigendian\fR, \fB\-littleendian\fR +.IP "Other options" 4 +.IX Item "Other options" +\&\fB\-src\fR, \fB\-stash="somepackage"\fR, \fB\-main\fR, \fB\-nomain\fR, \fB\-nobanner\fR, +\&\fB\-banner\fR, \fB\-banneris\fR => subref +.IP "Option Stickiness" 4 +.IX Item "Option Stickiness" +.RE +.RS 4 +.RE +.PD 0 +.IP ABBREVIATIONS 4 +.IX Item "ABBREVIATIONS" +.RS 4 +.IP "OP class abbreviations" 4 +.IX Item "OP class abbreviations" +.IP "OP flags abbreviations" 4 +.IX Item "OP flags abbreviations" +.RE +.RS 4 +.RE +.IP "FORMATTING SPECIFICATIONS" 4 +.IX Item "FORMATTING SPECIFICATIONS" +.RS 4 +.IP "Special Patterns" 4 +.IX Item "Special Patterns" +.PD +\&\fB(x(\fR\fIexec_text\fR\fB;\fR\fIbasic_text\fR\fB)x)\fR, \fB(*(\fR\fItext\fR\fB)*)\fR, +\&\fB(*(\fR\fItext1\fR\fB;\fR\fItext2\fR\fB)*)\fR, \fB(?(\fR\fItext1\fR\fB#\fR\fIvar\fR\fIText2\fR\fB)?)\fR, +\&\fB~\fR +.IP "# Variables" 4 +.IX Item "# Variables" +\&\fB#\fR\fIvar\fR, \fB#\fR\fIvar\fR\fIN\fR, \fB#\fR\fIVar\fR, \fB#addr\fR, \fB#arg\fR, \fB#class\fR, +\&\fB#classsym\fR, \fB#coplabel\fR, \fB#exname\fR, \fB#extarg\fR, \fB#firstaddr\fR, +\&\fB#flags\fR, \fB#flagval\fR, \fB#hints\fR, \fB#hintsval\fR, \fB#hyphseq\fR, \fB#label\fR, +\&\fB#lastaddr\fR, \fB#name\fR, \fB#NAME\fR, \fB#next\fR, \fB#nextaddr\fR, \fB#noise\fR, +\&\fB#private\fR, \fB#privval\fR, \fB#seq\fR, \fB#opt\fR, \fB#sibaddr\fR, \fB#svaddr\fR, +\&\fB#svclass\fR, \fB#svval\fR, \fB#targ\fR, \fB#targarg\fR, \fB#targarglife\fR, \fB#typenum\fR +.RE +.RS 4 +.RE +.IP "One-Liner Command tips" 4 +.IX Item "One-Liner Command tips" +perl \-MO=Concise,bar foo.pl, perl \-MDigest::MD5=md5 \-MO=Concise,md5 \-e1, +perl \-MPOSIX \-MO=Concise,_POSIX_ARG_MAX \-e1, perl \-MPOSIX \-MO=Concise,a \-e +\&'print _POSIX_SAVED_IDS', perl \-MPOSIX \-MO=Concise,a \-e 'sub +a{_POSIX_SAVED_IDS}', perl \-MB::Concise \-e +\&'B::Concise::compile("\-exec","\-src", \e%B::Concise::)\->()' +.IP "Using B::Concise outside of the O framework" 4 +.IX Item "Using B::Concise outside of the O framework" +.RS 4 +.PD 0 +.IP "Example: Altering Concise Renderings" 4 +.IX Item "Example: Altering Concise Renderings" +.IP \fBset_style()\fR 4 +.IX Item "set_style()" +.IP set_style_standard($name) 4 +.IX Item "set_style_standard($name)" +.IP "add_style ()" 4 +.IX Item "add_style ()" +.IP "add_callback ()" 4 +.IX Item "add_callback ()" +.IP "Running \fBB::Concise::compile()\fR" 4 +.IX Item "Running B::Concise::compile()" +.IP \fBB::Concise::reset_sequence()\fR 4 +.IX Item "B::Concise::reset_sequence()" +.IP Errors 4 +.IX Item "Errors" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "B::Deparse \- Perl compiler backend to produce perl code" +.IX Subsection "B::Deparse - Perl compiler backend to produce perl code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.PD +\&\fB\-d\fR, \fB\-f\fR\fIFILE\fR, \fB\-l\fR, \fB\-p\fR, \fB\-P\fR, \fB\-q\fR, \fB\-s\fR\fILETTERS\fR, \fBC\fR, +\&\fBi\fR\fINUMBER\fR, \fBT\fR, \fBv\fR\fISTRING\fR\fB.\fR, \fB\-x\fR\fILEVEL\fR +.IP "USING B::Deparse AS A MODULE" 4 +.IX Item "USING B::Deparse AS A MODULE" +.RS 4 +.PD 0 +.IP Synopsis 4 +.IX Item "Synopsis" +.IP Description 4 +.IX Item "Description" +.IP new 4 +.IX Item "new" +.IP ambient_pragmas 4 +.IX Item "ambient_pragmas" +.PD +strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits, +%^H +.IP coderef2text 4 +.IX Item "coderef2text" +.RE +.RS 4 +.RE +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "B::Op_private \- OP op_private flag definitions" +.IX Subsection "B::Op_private - OP op_private flag definitions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP %bits 4 +.el .IP \f(CW%bits\fR 4 +.IX Item "%bits" +.ie n .IP %defines 4 +.el .IP \f(CW%defines\fR 4 +.IX Item "%defines" +.ie n .IP %labels 4 +.el .IP \f(CW%labels\fR 4 +.IX Item "%labels" +.ie n .IP %ops_using 4 +.el .IP \f(CW%ops_using\fR 4 +.IX Item "%ops_using" +.RE +.RS 4 +.RE +.PD +.SS "B::Showlex \- Show lexical variables used in functions or files" +.IX Subsection "B::Showlex - Show lexical variables used in functions or files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP TODO 4 +.IX Item "TODO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "B::Terse \- Walk Perl syntax tree, printing terse info about ops" +.IX Subsection "B::Terse - Walk Perl syntax tree, printing terse info about ops" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "B::Xref \- Generates cross reference reports for Perl programs" +.IX Subsection "B::Xref - Generates cross reference reports for Perl programs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +i, &, s, r +.IP OPTIONS 4 +.IX Item "OPTIONS" +\&\f(CW\*(C`\-oFILENAME\*(C'\fR, \f(CW\*(C`\-r\*(C'\fR, \f(CW\*(C`\-d\*(C'\fR, \f(CW\*(C`\-D[tO]\*(C'\fR +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Benchmark \- benchmark running times of Perl code" +.IX Subsection "Benchmark - benchmark running times of Perl code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Methods 4 +.IX Item "Methods" +.PD +new, debug, iters +.IP "Standard Exports" 4 +.IX Item "Standard Exports" +timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), +timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( +TIMEDIFF, [ STYLE, [ FORMAT ] ] ) +.IP "Optional Exports" 4 +.IX Item "Optional Exports" +clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUNT, CODEHASHREF, [ +STYLE ] ), cmpthese ( RESULTSHASHREF, [ STYLE ] ), countit(TIME, CODE), +disablecache ( ), enablecache ( ), timesum ( T1, T2 ) +.IP :hireswallclock 4 +.IX Item ":hireswallclock" +.RE +.RS 4 +.RE +.PD 0 +.IP "Benchmark Object" 4 +.IX Item "Benchmark Object" +.PD +cpu_p, cpu_c, cpu_a, real, iters +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP INHERITANCE 4 +.IX Item "INHERITANCE" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.PD +.SS "CORE \- Namespace for Perl's core routines" +.IX Subsection "CORE - Namespace for Perl's core routines" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDING CORE FUNCTIONS" 4 +.IX Item "OVERRIDING CORE FUNCTIONS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "CPAN \- query, download and build perl modules from CPAN sites" +.IX Subsection "CPAN - query, download and build perl modules from CPAN sites" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "CPAN::shell([$prompt, $command]) Starting Interactive Mode" 4 +.el .IP "CPAN::shell([$prompt, \f(CW$command\fR]) Starting Interactive Mode" 4 +.IX Item "CPAN::shell([$prompt, $command]) Starting Interactive Mode" +.PD +Searching for authors, bundles, distribution files and modules, \f(CW\*(C`get\*(C'\fR, +\&\f(CW\*(C`make\*(C'\fR, \f(CW\*(C`test\*(C'\fR, \f(CW\*(C`install\*(C'\fR, \f(CW\*(C`clean\*(C'\fR modules or distributions, \f(CW\*(C`readme\*(C'\fR, +\&\f(CW\*(C`perldoc\*(C'\fR, \f(CW\*(C`look\*(C'\fR module or distribution, \f(CW\*(C`ls\*(C'\fR author, \f(CW\*(C`ls\*(C'\fR +globbing_expression, \f(CW\*(C`failed\*(C'\fR, Persistence between sessions, The \f(CW\*(C`force\*(C'\fR +and the \f(CW\*(C`fforce\*(C'\fR pragma, Lockfile, Signals +.IP CPAN::Shell 4 +.IX Item "CPAN::Shell" +.PD 0 +.IP autobundle 4 +.IX Item "autobundle" +.IP hosts 4 +.IX Item "hosts" +.PD +install_tested, is_tested +.IP mkmyconfig 4 +.IX Item "mkmyconfig" +.PD 0 +.IP "r [Module|/Regexp/]..." 4 +.IX Item "r [Module|/Regexp/]..." +.IP "recent ***EXPERIMENTAL COMMAND***" 4 +.IX Item "recent ***EXPERIMENTAL COMMAND***" +.IP recompile 4 +.IX Item "recompile" +.IP "report Bundle|Distribution|Module" 4 +.IX Item "report Bundle|Distribution|Module" +.IP "smoke ***EXPERIMENTAL COMMAND***" 4 +.IX Item "smoke ***EXPERIMENTAL COMMAND***" +.IP "upgrade [Module|/Regexp/]..." 4 +.IX Item "upgrade [Module|/Regexp/]..." +.ie n .IP "The four ""CPAN::*"" Classes: Author, Bundle, Module, Distribution" 4 +.el .IP "The four \f(CWCPAN::*\fR Classes: Author, Bundle, Module, Distribution" 4 +.IX Item "The four CPAN::* Classes: Author, Bundle, Module, Distribution" +.IP "Integrating local directories" 4 +.IX Item "Integrating local directories" +.IP Redirection 4 +.IX Item "Redirection" +.IP "Plugin support ***EXPERIMENTAL***" 4 +.IX Item "Plugin support ***EXPERIMENTAL***" +.RE +.RS 4 +.RE +.IP CONFIGURATION 4 +.IX Item "CONFIGURATION" +.PD +completion support, displaying some help: o conf help, displaying current +values: o conf [KEY], changing of scalar values: o conf KEY VALUE, changing +of list values: o conf KEY SHIFT|UNSHIFT|PUSH|POP|SPLICE|LIST, reverting to +saved: o conf defaults, saving the config: o conf commit +.RS 4 +.IP "Config Variables" 4 +.IX Item "Config Variables" +\&\f(CW\*(C`o conf <scalar option>\*(C'\fR, \f(CW\*(C`o conf <scalar option> +<value>\*(C'\fR, \f(CW\*(C`o conf <list option>\*(C'\fR, \f(CW\*(C`o conf <list +option> [shift|pop]\*(C'\fR, \f(CW\*(C`o conf <list option> +[unshift|push|splice] <list>\*(C'\fR, interactive editing: o conf init +[MATCH|LIST] +.IP "CPAN::anycwd($path): Note on config variable getcwd" 4 +.IX Item "CPAN::anycwd($path): Note on config variable getcwd" +cwd, getcwd, fastcwd, getdcwd, backtickcwd +.IP "Note on the format of the urllist parameter" 4 +.IX Item "Note on the format of the urllist parameter" +.PD 0 +.IP "The urllist parameter has CD-ROM support" 4 +.IX Item "The urllist parameter has CD-ROM support" +.IP "Maintaining the urllist parameter" 4 +.IX Item "Maintaining the urllist parameter" +.ie n .IP "The ""requires"" and ""build_requires"" dependency declarations" 4 +.el .IP "The \f(CWrequires\fR and \f(CWbuild_requires\fR dependency declarations" 4 +.IX Item "The requires and build_requires dependency declarations" +.IP "Configuration of the allow_installing_* parameters" 4 +.IX Item "Configuration of the allow_installing_* parameters" +.IP "Configuration for individual distributions (\fIDistroprefs\fR)" 4 +.IX Item "Configuration for individual distributions (Distroprefs)" +.IP Filenames 4 +.IX Item "Filenames" +.IP "Fallback Data::Dumper and Storable" 4 +.IX Item "Fallback Data::Dumper and Storable" +.IP Blueprint 4 +.IX Item "Blueprint" +.IP "Language Specs" 4 +.IX Item "Language Specs" +.PD +comment [scalar], cpanconfig [hash], depends [hash] *** EXPERIMENTAL +FEATURE ***, disabled [boolean], features [array] *** EXPERIMENTAL FEATURE +***, goto [string], install [hash], make [hash], match [hash], patches +[array], pl [hash], test [hash] +.IP "Processing Instructions" 4 +.IX Item "Processing Instructions" +args [array], commandline, eexpect [hash], env [hash], expect [array] +.ie n .IP "Schema verification with ""Kwalify""" 4 +.el .IP "Schema verification with \f(CWKwalify\fR" 4 +.IX Item "Schema verification with Kwalify" +.PD 0 +.IP "Example Distroprefs Files" 4 +.IX Item "Example Distroprefs Files" +.RE +.RS 4 +.RE +.IP "PROGRAMMER'S INTERFACE" 4 +.IX Item "PROGRAMMER'S INTERFACE" +.PD +expand($type,@things), expandany(@things), Programming Examples +.RS 4 +.IP "Methods in the other Classes" 4 +.IX Item "Methods in the other Classes" +\&\fBCPAN::Author::as_glimpse()\fR, \fBCPAN::Author::as_string()\fR, +\&\fBCPAN::Author::email()\fR, \fBCPAN::Author::fullname()\fR, \fBCPAN::Author::name()\fR, +\&\fBCPAN::Bundle::as_glimpse()\fR, \fBCPAN::Bundle::as_string()\fR, +\&\fBCPAN::Bundle::clean()\fR, \fBCPAN::Bundle::contains()\fR, +CPAN::Bundle::force($method,@args), \fBCPAN::Bundle::get()\fR, +\&\fBCPAN::Bundle::inst_file()\fR, \fBCPAN::Bundle::inst_version()\fR, +\&\fBCPAN::Bundle::uptodate()\fR, \fBCPAN::Bundle::install()\fR, \fBCPAN::Bundle::make()\fR, +\&\fBCPAN::Bundle::readme()\fR, \fBCPAN::Bundle::test()\fR, +\&\fBCPAN::Distribution::as_glimpse()\fR, \fBCPAN::Distribution::as_string()\fR, +CPAN::Distribution::author, \fBCPAN::Distribution::pretty_id()\fR, +\&\fBCPAN::Distribution::base_id()\fR, \fBCPAN::Distribution::clean()\fR, +\&\fBCPAN::Distribution::containsmods()\fR, \fBCPAN::Distribution::cvs_import()\fR, +\&\fBCPAN::Distribution::dir()\fR, CPAN::Distribution::force($method,@args), +\&\fBCPAN::Distribution::get()\fR, \fBCPAN::Distribution::install()\fR, +\&\fBCPAN::Distribution::isa_perl()\fR, \fBCPAN::Distribution::look()\fR, +\&\fBCPAN::Distribution::make()\fR, \fBCPAN::Distribution::perldoc()\fR, +\&\fBCPAN::Distribution::prefs()\fR, \fBCPAN::Distribution::prereq_pm()\fR, +\&\fBCPAN::Distribution::readme()\fR, \fBCPAN::Distribution::reports()\fR, +\&\fBCPAN::Distribution::read_yaml()\fR, \fBCPAN::Distribution::test()\fR, +\&\fBCPAN::Distribution::uptodate()\fR, \fBCPAN::Index::force_reload()\fR, +\&\fBCPAN::Index::reload()\fR, \fBCPAN::InfoObj::dump()\fR, \fBCPAN::Module::as_glimpse()\fR, +\&\fBCPAN::Module::as_string()\fR, \fBCPAN::Module::clean()\fR, +\&\fBCPAN::Module::cpan_file()\fR, \fBCPAN::Module::cpan_version()\fR, +\&\fBCPAN::Module::cvs_import()\fR, \fBCPAN::Module::description()\fR, +\&\fBCPAN::Module::distribution()\fR, \fBCPAN::Module::dslip_status()\fR, +CPAN::Module::force($method,@args), \fBCPAN::Module::get()\fR, +\&\fBCPAN::Module::inst_file()\fR, \fBCPAN::Module::available_file()\fR, +\&\fBCPAN::Module::inst_version()\fR, \fBCPAN::Module::available_version()\fR, +\&\fBCPAN::Module::install()\fR, \fBCPAN::Module::look()\fR, \fBCPAN::Module::make()\fR, +\&\fBCPAN::Module::manpage_headline()\fR, \fBCPAN::Module::perldoc()\fR, +\&\fBCPAN::Module::readme()\fR, \fBCPAN::Module::reports()\fR, \fBCPAN::Module::test()\fR, +\&\fBCPAN::Module::uptodate()\fR, \fBCPAN::Module::userid()\fR +.IP "Cache Manager" 4 +.IX Item "Cache Manager" +.PD 0 +.IP Bundles 4 +.IX Item "Bundles" +.RE +.RS 4 +.RE +.IP PREREQUISITES 4 +.IX Item "PREREQUISITES" +.IP UTILITIES 4 +.IX Item "UTILITIES" +.RS 4 +.IP "Finding packages and VERSION" 4 +.IX Item "Finding packages and VERSION" +.IP Debugging 4 +.IX Item "Debugging" +.PD +o debug package.., o debug \-package.., o debug all, o debug number +.IP "Floppy, Zip, Offline Mode" 4 +.IX Item "Floppy, Zip, Offline Mode" +.PD 0 +.IP "Basic Utilities for Programmers" 4 +.IX Item "Basic Utilities for Programmers" +.PD +has_inst($module), use_inst($module), has_usable($module), +instance($module), \fBfrontend()\fR, frontend($new_frontend) +.RE +.RS 4 +.RE +.IP SECURITY 4 +.IX Item "SECURITY" +.RS 4 +.PD 0 +.IP "Cryptographically signed modules" 4 +.IX Item "Cryptographically signed modules" +.RE +.RS 4 +.RE +.IP EXPORT 4 +.IX Item "EXPORT" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.IP "POPULATE AN INSTALLATION WITH LOTS OF MODULES" 4 +.IX Item "POPULATE AN INSTALLATION WITH LOTS OF MODULES" +.IP "WORKING WITH CPAN.pm BEHIND FIREWALLS" 4 +.IX Item "WORKING WITH CPAN.pm BEHIND FIREWALLS" +.RS 4 +.IP "Three basic types of firewalls" 4 +.IX Item "Three basic types of firewalls" +.PD +http firewall, ftp firewall, One-way visibility, SOCKS, IP Masquerade +.IP "Configuring lynx or ncftp for going through a firewall" 4 +.IX Item "Configuring lynx or ncftp for going through a firewall" +.RE +.RS 4 +.RE +.PD 0 +.IP FAQ 4 +.IX Item "FAQ" +.PD +1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), +18), 19) +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.RS 4 +.PD 0 +.IP "OLD PERL VERSIONS" 4 +.IX Item "OLD PERL VERSIONS" +.IP CPANPLUS 4 +.IX Item "CPANPLUS" +.IP CPANMINUS 4 +.IX Item "CPANMINUS" +.RE +.RS 4 +.RE +.IP "SECURITY ADVICE" 4 +.IX Item "SECURITY ADVICE" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP TRANSLATIONS 4 +.IX Item "TRANSLATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "CPAN::API::HOWTO \- a recipe book for programming with CPAN.pm" +.IX Subsection "CPAN::API::HOWTO - a recipe book for programming with CPAN.pm" +.IP RECIPES 4 +.IX Item "RECIPES" +.RS 4 +.PD 0 +.IP "What distribution contains a particular module?" 4 +.IX Item "What distribution contains a particular module?" +.IP "What modules does a particular distribution contain?" 4 +.IX Item "What modules does a particular distribution contain?" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "CPAN::Debug \- internal debugging for CPAN.pm" +.IX Subsection "CPAN::Debug - internal debugging for CPAN.pm" +.IP LICENSE 4 +.IX Item "LICENSE" +.SS "CPAN::Distroprefs \-\- read and match distroprefs" +.IX Subsection "CPAN::Distroprefs -- read and match distroprefs" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP INTERFACE 4 +.IX Item "INTERFACE" +.PD +a CPAN::Distroprefs::Result object, \f(CW\*(C`undef\*(C'\fR, indicating that no prefs +files remain to be found +.IP RESULTS 4 +.IX Item "RESULTS" +.RS 4 +.PD 0 +.IP Common 4 +.IX Item "Common" +.IP Errors 4 +.IX Item "Errors" +.IP Successes 4 +.IX Item "Successes" +.RE +.RS 4 +.RE +.IP PREFS 4 +.IX Item "PREFS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "CPAN::FirstTime \- Utility for CPAN::Config file Initialization" +.IX Subsection "CPAN::FirstTime - Utility for CPAN::Config file Initialization" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +allow_installing_module_downgrades, allow_installing_outdated_dists, +auto_commit, build_cache, build_dir, build_dir_reuse, +build_requires_install_policy, cache_metadata, check_sigs, +cleanup_after_install, colorize_output, colorize_print, colorize_warn, +colorize_debug, commandnumber_in_prompt, connect_to_internet_ok, +ftp_passive, ftpstats_period, ftpstats_size, getcwd, halt_on_failure, +histfile, histsize, inactivity_timeout, index_expire, +inhibit_startup_message, keep_source_where, load_module_verbosity, +makepl_arg, make_arg, make_install_arg, make_install_make_command, +mbuildpl_arg, mbuild_arg, mbuild_install_arg, mbuild_install_build_command, +pager, prefer_installer, prefs_dir, prerequisites_policy, pushy_https, +randomize_urllist, recommends_policy, scan_cache, shell, +show_unparsable_versions, show_upload_date, show_zero_versions, +suggests_policy, tar_verbosity, term_is_latin, term_ornaments, test_report, +perl5lib_verbosity, prefer_external_tar, trust_test_report_history, +urllist_ping_external, urllist_ping_verbose, use_prompt_default, +use_sqlite, version_timeout, yaml_load_code, yaml_module +.IP LICENSE 4 +.IX Item "LICENSE" +.SS "CPAN::HandleConfig \- internal configuration handling for CPAN.pm" +.IX Subsection "CPAN::HandleConfig - internal configuration handling for CPAN.pm" +.PD 0 +.ie n .IP """CLASS\->safe_quote ITEM""" 4 +.el .IP "\f(CWCLASS\->safe_quote ITEM\fR" 4 +.IX Item "CLASS->safe_quote ITEM" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "CPAN::Kwalify \- Interface between CPAN.pm and Kwalify.pm" +.IX Subsection "CPAN::Kwalify - Interface between CPAN.pm and Kwalify.pm" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +_validate($schema_name, \f(CW$data\fR, \f(CW$file\fR, \f(CW$doc\fR), yaml($schema_name) +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "CPAN::Meta \- the distribution metadata for a CPAN dist" +.IX Subsection "CPAN::Meta - the distribution metadata for a CPAN dist" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP create 4 +.IX Item "create" +.IP load_file 4 +.IX Item "load_file" +.IP load_yaml_string 4 +.IX Item "load_yaml_string" +.IP load_json_string 4 +.IX Item "load_json_string" +.IP load_string 4 +.IX Item "load_string" +.IP save 4 +.IX Item "save" +.IP meta_spec_version 4 +.IX Item "meta_spec_version" +.IP effective_prereqs 4 +.IX Item "effective_prereqs" +.IP should_index_file 4 +.IX Item "should_index_file" +.IP should_index_package 4 +.IX Item "should_index_package" +.IP features 4 +.IX Item "features" +.IP feature 4 +.IX Item "feature" +.IP as_struct 4 +.IX Item "as_struct" +.IP as_string 4 +.IX Item "as_string" +.RE +.RS 4 +.RE +.IP "STRING DATA" 4 +.IX Item "STRING DATA" +.IP "LIST DATA" 4 +.IX Item "LIST DATA" +.IP "MAP DATA" 4 +.IX Item "MAP DATA" +.IP "CUSTOM DATA" 4 +.IX Item "CUSTOM DATA" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.RS 4 +.IP "Bugs / Feature Requests" 4 +.IX Item "Bugs / Feature Requests" +.IP "Source Code" 4 +.IX Item "Source Code" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Converter \- Convert CPAN distribution metadata structures" +.IX Subsection "CPAN::Meta::Converter - Convert CPAN distribution metadata structures" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP convert 4 +.IX Item "convert" +.IP upgrade_fragment 4 +.IX Item "upgrade_fragment" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Feature \- an optional feature provided by a CPAN distribution" +.IX Subsection "CPAN::Meta::Feature - an optional feature provided by a CPAN distribution" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP identifier 4 +.IX Item "identifier" +.IP description 4 +.IX Item "description" +.IP prereqs 4 +.IX Item "prereqs" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::History \- history of CPAN Meta Spec changes" +.IX Subsection "CPAN::Meta::History - history of CPAN Meta Spec changes" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP HISTORY 4 +.IX Item "HISTORY" +.RS 4 +.IP "Version 2" 4 +.IX Item "Version 2" +.IP "Version 1.4" 4 +.IX Item "Version 1.4" +.IP "Version 1.3" 4 +.IX Item "Version 1.3" +.IP "Version 1.2" 4 +.IX Item "Version 1.2" +.IP "Version 1.1" 4 +.IX Item "Version 1.1" +.IP "Version 1.0" 4 +.IX Item "Version 1.0" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::History::Meta_1_0 \- Version 1.0 metadata specification for META.yml" +.IX Subsection "CPAN::Meta::History::Meta_1_0 - Version 1.0 metadata specification for META.yml" +.IP PREFACE 4 +.IX Item "PREFACE" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Format 4 +.IX Item "Format" +.IP Fields 4 +.IX Item "Fields" +.PD +name, version, license, perl, gpl, lgpl, artistic, bsd, open_source, +unrestricted, restrictive, distribution_type, requires, recommends, +build_requires, conflicts, dynamic_config, generated_by +.IP "Related Projects" 4 +.IX Item "Related Projects" +DOAP +.IP History 4 +.IX Item "History" +.SS "CPAN::Meta::History::Meta_1_1 \- Version 1.1 metadata specification for META.yml" +.IX Subsection "CPAN::Meta::History::Meta_1_1 - Version 1.1 metadata specification for META.yml" +.PD 0 +.IP PREFACE 4 +.IX Item "PREFACE" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Format 4 +.IX Item "Format" +.IP Fields 4 +.IX Item "Fields" +.PD +name, version, license, perl, gpl, lgpl, artistic, bsd, open_source, +unrestricted, restrictive, license_uri, distribution_type, private, +requires, recommends, build_requires, conflicts, dynamic_config, +generated_by +.RS 4 +.IP "Ingy's suggestions" 4 +.IX Item "Ingy's suggestions" +short_description, description, maturity, author_id, owner_id, +categorization, keyword, chapter_id, URL for further information, +namespaces +.RE +.RS 4 +.RE +.IP History 4 +.IX Item "History" +.SS "CPAN::Meta::History::Meta_1_2 \- Version 1.2 metadata specification for META.yml" +.IX Subsection "CPAN::Meta::History::Meta_1_2 - Version 1.2 metadata specification for META.yml" +.PD 0 +.IP PREFACE 4 +.IX Item "PREFACE" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FORMAT 4 +.IX Item "FORMAT" +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.PD +distribution, module +.IP "VERSION SPECIFICATIONS" 4 +.IX Item "VERSION SPECIFICATIONS" +.PD 0 +.IP HEADER 4 +.IX Item "HEADER" +.IP FIELDS 4 +.IX Item "FIELDS" +.RS 4 +.IP meta-spec 4 +.IX Item "meta-spec" +.IP name 4 +.IX Item "name" +.IP version 4 +.IX Item "version" +.IP abstract 4 +.IX Item "abstract" +.IP author 4 +.IX Item "author" +.IP license 4 +.IX Item "license" +.PD +perl, gpl, lgpl, artistic, bsd, open_source, unrestricted, restrictive +.IP distribution_type 4 +.IX Item "distribution_type" +.PD 0 +.IP requires 4 +.IX Item "requires" +.IP recommends 4 +.IX Item "recommends" +.IP build_requires 4 +.IX Item "build_requires" +.IP conflicts 4 +.IX Item "conflicts" +.IP dynamic_config 4 +.IX Item "dynamic_config" +.IP private 4 +.IX Item "private" +.IP provides 4 +.IX Item "provides" +.IP no_index 4 +.IX Item "no_index" +.IP keywords 4 +.IX Item "keywords" +.IP resources 4 +.IX Item "resources" +.PD +homepage, license, bugtracker +.IP generated_by 4 +.IX Item "generated_by" +.RE +.RS 4 +.RE +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +March 14, 2003 (Pi day), May 8, 2003, November 13, 2003, November 16, 2003, +December 9, 2003, December 15, 2003, July 26, 2005, August 23, 2005 +.SS "CPAN::Meta::History::Meta_1_3 \- Version 1.3 metadata specification for META.yml" +.IX Subsection "CPAN::Meta::History::Meta_1_3 - Version 1.3 metadata specification for META.yml" +.IP PREFACE 4 +.IX Item "PREFACE" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FORMAT 4 +.IX Item "FORMAT" +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.PD +distribution, module +.IP HEADER 4 +.IX Item "HEADER" +.PD 0 +.IP FIELDS 4 +.IX Item "FIELDS" +.RS 4 +.IP meta-spec 4 +.IX Item "meta-spec" +.IP name 4 +.IX Item "name" +.IP version 4 +.IX Item "version" +.IP abstract 4 +.IX Item "abstract" +.IP author 4 +.IX Item "author" +.IP license 4 +.IX Item "license" +.PD +apache, artistic, bsd, gpl, lgpl, mit, mozilla, open_source, perl, +restrictive, unrestricted +.IP distribution_type 4 +.IX Item "distribution_type" +.PD 0 +.IP requires 4 +.IX Item "requires" +.IP recommends 4 +.IX Item "recommends" +.IP build_requires 4 +.IX Item "build_requires" +.IP conflicts 4 +.IX Item "conflicts" +.IP dynamic_config 4 +.IX Item "dynamic_config" +.IP private 4 +.IX Item "private" +.IP provides 4 +.IX Item "provides" +.IP no_index 4 +.IX Item "no_index" +.IP keywords 4 +.IX Item "keywords" +.IP resources 4 +.IX Item "resources" +.PD +homepage, license, bugtracker +.IP generated_by 4 +.IX Item "generated_by" +.RE +.RS 4 +.RE +.PD 0 +.IP "VERSION SPECIFICATIONS" 4 +.IX Item "VERSION SPECIFICATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +March 14, 2003 (Pi day), May 8, 2003, November 13, 2003, November 16, 2003, +December 9, 2003, December 15, 2003, July 26, 2005, August 23, 2005 +.SS "CPAN::Meta::History::Meta_1_4 \- Version 1.4 metadata specification for META.yml" +.IX Subsection "CPAN::Meta::History::Meta_1_4 - Version 1.4 metadata specification for META.yml" +.IP PREFACE 4 +.IX Item "PREFACE" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FORMAT 4 +.IX Item "FORMAT" +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.PD +distribution, module +.IP HEADER 4 +.IX Item "HEADER" +.PD 0 +.IP FIELDS 4 +.IX Item "FIELDS" +.RS 4 +.IP meta-spec 4 +.IX Item "meta-spec" +.IP name 4 +.IX Item "name" +.IP version 4 +.IX Item "version" +.IP abstract 4 +.IX Item "abstract" +.IP author 4 +.IX Item "author" +.IP license 4 +.IX Item "license" +.PD +apache, artistic, bsd, gpl, lgpl, mit, mozilla, open_source, perl, +restrictive, unrestricted +.IP distribution_type 4 +.IX Item "distribution_type" +.PD 0 +.IP requires 4 +.IX Item "requires" +.IP recommends 4 +.IX Item "recommends" +.IP build_requires 4 +.IX Item "build_requires" +.IP configure_requires 4 +.IX Item "configure_requires" +.IP conflicts 4 +.IX Item "conflicts" +.IP dynamic_config 4 +.IX Item "dynamic_config" +.IP private 4 +.IX Item "private" +.IP provides 4 +.IX Item "provides" +.IP no_index 4 +.IX Item "no_index" +.IP keywords 4 +.IX Item "keywords" +.IP resources 4 +.IX Item "resources" +.PD +homepage, license, bugtracker +.IP generated_by 4 +.IX Item "generated_by" +.RE +.RS 4 +.RE +.PD 0 +.IP "VERSION SPECIFICATIONS" 4 +.IX Item "VERSION SPECIFICATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +March 14, 2003 (Pi day), May 8, 2003, November 13, 2003, November 16, 2003, +December 9, 2003, December 15, 2003, July 26, 2005, August 23, 2005, June +12, 2007 +.SS "CPAN::Meta::Merge \- Merging CPAN Meta fragments" +.IX Subsection "CPAN::Meta::Merge - Merging CPAN Meta fragments" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP merge(@fragments) 4 +.IX Item "merge(@fragments)" +.RE +.RS 4 +.RE +.IP "MERGE STRATEGIES" 4 +.IX Item "MERGE STRATEGIES" +.PD +identical, set_addition, uniq_map, improvise +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD 0 +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Prereqs \- a set of distribution prerequisites by phase and type" +.IX Subsection "CPAN::Meta::Prereqs - a set of distribution prerequisites by phase and type" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP requirements_for 4 +.IX Item "requirements_for" +.IP phases 4 +.IX Item "phases" +.IP types_in 4 +.IX Item "types_in" +.IP with_merged_prereqs 4 +.IX Item "with_merged_prereqs" +.IP merged_requirements 4 +.IX Item "merged_requirements" +.IP as_string_hash 4 +.IX Item "as_string_hash" +.IP is_finalized 4 +.IX Item "is_finalized" +.IP finalize 4 +.IX Item "finalize" +.IP clone 4 +.IX Item "clone" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Requirements \- a set of version requirements for a CPAN dist" +.IX Subsection "CPAN::Meta::Requirements - a set of version requirements for a CPAN dist" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP add_minimum 4 +.IX Item "add_minimum" +.IP add_maximum 4 +.IX Item "add_maximum" +.IP add_exclusion 4 +.IX Item "add_exclusion" +.IP exact_version 4 +.IX Item "exact_version" +.IP add_requirements 4 +.IX Item "add_requirements" +.IP accepts_module 4 +.IX Item "accepts_module" +.IP clear_requirement 4 +.IX Item "clear_requirement" +.IP requirements_for_module 4 +.IX Item "requirements_for_module" +.IP structured_requirements_for_module 4 +.IX Item "structured_requirements_for_module" +.IP required_modules 4 +.IX Item "required_modules" +.IP clone 4 +.IX Item "clone" +.IP is_simple 4 +.IX Item "is_simple" +.IP is_finalized 4 +.IX Item "is_finalized" +.IP finalize 4 +.IX Item "finalize" +.IP as_string_hash 4 +.IX Item "as_string_hash" +.IP add_string_requirement 4 +.IX Item "add_string_requirement" +.PD +>= 1.3, <= 1.3, != 1.3, > 1.3, < 1.3, >= 1.3, != 1.5, <= 2.0 +.IP from_string_hash 4 +.IX Item "from_string_hash" +.RE +.RS 4 +.RE +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.RS 4 +.IP "Bugs / Feature Requests" 4 +.IX Item "Bugs / Feature Requests" +.IP "Source Code" 4 +.IX Item "Source Code" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Spec \- specification for CPAN distribution metadata" +.IX Subsection "CPAN::Meta::Spec - specification for CPAN distribution metadata" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.PD +distribution, module, package, consumer, producer, must, should, may, etc +.IP "DATA TYPES" 4 +.IX Item "DATA TYPES" +.RS 4 +.PD 0 +.IP Boolean 4 +.IX Item "Boolean" +.IP String 4 +.IX Item "String" +.IP List 4 +.IX Item "List" +.IP Map 4 +.IX Item "Map" +.IP "License String" 4 +.IX Item "License String" +.IP URL 4 +.IX Item "URL" +.IP Version 4 +.IX Item "Version" +.IP "Version Range" 4 +.IX Item "Version Range" +.RE +.RS 4 +.RE +.IP STRUCTURE 4 +.IX Item "STRUCTURE" +.RS 4 +.IP "REQUIRED FIELDS" 4 +.IX Item "REQUIRED FIELDS" +.PD +version, url, stable, testing, unstable +.IP "OPTIONAL FIELDS" 4 +.IX Item "OPTIONAL FIELDS" +file, directory, package, namespace, description, prereqs, file, version, +homepage, license, bugtracker, repository +.IP "DEPRECATED FIELDS" 4 +.IX Item "DEPRECATED FIELDS" +.RE +.RS 4 +.RE +.PD 0 +.IP "VERSION NUMBERS" 4 +.IX Item "VERSION NUMBERS" +.RS 4 +.IP "Version Formats" 4 +.IX Item "Version Formats" +.PD +Decimal versions, Dotted-integer versions +.IP "Version Ranges" 4 +.IX Item "Version Ranges" +.RE +.RS 4 +.RE +.PD 0 +.IP PREREQUISITES 4 +.IX Item "PREREQUISITES" +.RS 4 +.IP "Prereq Spec" 4 +.IX Item "Prereq Spec" +.PD +configure, build, test, runtime, develop, requires, recommends, suggests, +conflicts +.IP "Merging and Resolving Prerequisites" 4 +.IX Item "Merging and Resolving Prerequisites" +.RE +.RS 4 +.RE +.PD 0 +.IP SERIALIZATION 4 +.IX Item "SERIALIZATION" +.IP "NOTES FOR IMPLEMENTORS" 4 +.IX Item "NOTES FOR IMPLEMENTORS" +.RS 4 +.IP "Extracting Version Numbers from Perl Modules" 4 +.IX Item "Extracting Version Numbers from Perl Modules" +.IP "Comparing Version Numbers" 4 +.IX Item "Comparing Version Numbers" +.IP "Prerequisites for dynamically configured distributions" 4 +.IX Item "Prerequisites for dynamically configured distributions" +.IP "Indexing distributions a la PAUSE" 4 +.IX Item "Indexing distributions a la PAUSE" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::Validator \- validate CPAN distribution metadata structures" +.IX Subsection "CPAN::Meta::Validator - validate CPAN distribution metadata structures" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP is_valid 4 +.IX Item "is_valid" +.IP errors 4 +.IX Item "errors" +.IP "Check Methods" 4 +.IX Item "Check Methods" +.IP "Validator Methods" 4 +.IX Item "Validator Methods" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "CPAN::Meta::YAML \- Read and write a subset of YAML for CPAN Meta files" +.IX Subsection "CPAN::Meta::YAML - Read and write a subset of YAML for CPAN Meta files" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +new( LOCAL_FILE_NAME ) +.PP +\&\fBcontinents()\fR +.PP +countries( [CONTINENTS] ) +.PP +mirrors( [COUNTRIES] ) +.PP +get_mirrors_by_countries( [COUNTRIES] ) +.PP +get_mirrors_by_continents( [CONTINENTS] ) +.PP +get_countries_by_continents( [CONTINENTS] ) +.PP +default_mirror +.PP +best_mirrors +.PP +get_n_random_mirrors_by_continents( N, [CONTINENTS] ) +.PP +get_mirrors_timings( MIRROR_LIST, SEEN, CALLBACK, \f(CW%ARGS\fR ); +.PP +find_best_continents( HASH_REF ); +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "CPAN::Nox \- Wrapper around CPAN.pm without using any XS module" +.IX Subsection "CPAN::Nox - Wrapper around CPAN.pm without using any XS module" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "CPAN::Plugin \- Base class for CPAN shell extensions" +.IX Subsection "CPAN::Plugin - Base class for CPAN shell extensions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Alpha Status" 4 +.IX Item "Alpha Status" +.IP "How Plugins work?" 4 +.IX Item "How Plugins work?" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP plugin_requires 4 +.IX Item "plugin_requires" +.IP distribution_object 4 +.IX Item "distribution_object" +.IP distribution 4 +.IX Item "distribution" +.IP distribution_info 4 +.IX Item "distribution_info" +.IP build_dir 4 +.IX Item "build_dir" +.IP is_xs 4 +.IX Item "is_xs" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "CPAN::Plugin::Specfile \- Proof of concept implementation of a trivial CPAN::Plugin" +.IX Subsection "CPAN::Plugin::Specfile - Proof of concept implementation of a trivial CPAN::Plugin" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "CPAN::Queue \- internal queue support for CPAN.pm" +.IX Subsection "CPAN::Queue - internal queue support for CPAN.pm" +.IP LICENSE 4 +.IX Item "LICENSE" +.SS "CPAN::Tarzip \- internal handling of tar archives for CPAN.pm" +.IX Subsection "CPAN::Tarzip - internal handling of tar archives for CPAN.pm" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "CPAN::Version \- utility functions to compare CPAN versions" +.IX Subsection "CPAN::Version - utility functions to compare CPAN versions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Carp \- alternative warn and die for modules" +.IX Subsection "Carp - alternative warn and die for modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Forcing a Stack Trace" 4 +.IX Item "Forcing a Stack Trace" +.IP "Stack Trace formatting" 4 +.IX Item "Stack Trace formatting" +.RE +.RS 4 +.RE +.IP "GLOBAL VARIABLES" 4 +.IX Item "GLOBAL VARIABLES" +.RS 4 +.ie n .IP $Carp::MaxEvalLen 4 +.el .IP \f(CW$Carp::MaxEvalLen\fR 4 +.IX Item "$Carp::MaxEvalLen" +.ie n .IP $Carp::MaxArgLen 4 +.el .IP \f(CW$Carp::MaxArgLen\fR 4 +.IX Item "$Carp::MaxArgLen" +.ie n .IP $Carp::MaxArgNums 4 +.el .IP \f(CW$Carp::MaxArgNums\fR 4 +.IX Item "$Carp::MaxArgNums" +.ie n .IP $Carp::Verbose 4 +.el .IP \f(CW$Carp::Verbose\fR 4 +.IX Item "$Carp::Verbose" +.ie n .IP $Carp::RefArgFormatter 4 +.el .IP \f(CW$Carp::RefArgFormatter\fR 4 +.IX Item "$Carp::RefArgFormatter" +.ie n .IP @CARP_NOT 4 +.el .IP \f(CW@CARP_NOT\fR 4 +.IX Item "@CARP_NOT" +.ie n .IP %Carp::Internal 4 +.el .IP \f(CW%Carp::Internal\fR 4 +.IX Item "%Carp::Internal" +.ie n .IP %Carp::CarpInternal 4 +.el .IP \f(CW%Carp::CarpInternal\fR 4 +.IX Item "%Carp::CarpInternal" +.ie n .IP $Carp::CarpLevel 4 +.el .IP \f(CW$Carp::CarpLevel\fR 4 +.IX Item "$Carp::CarpLevel" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP CONTRIBUTING 4 +.IX Item "CONTRIBUTING" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Class::Struct \- declare struct-like datatypes as Perl classes" +.IX Subsection "Class::Struct - declare struct-like datatypes as Perl classes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "The struct() function" 4 +.el .IP "The \f(CWstruct()\fR function" 4 +.IX Item "The struct() function" +.IP "Class Creation at Compile Time" 4 +.IX Item "Class Creation at Compile Time" +.IP "Element Types and Accessor Methods" 4 +.IX Item "Element Types and Accessor Methods" +.PD +Scalar (\f(CW\*(Aq$\*(Aq\fR or \f(CW\*(Aq*$\*(Aq\fR), Array (\f(CW\*(Aq@\*(Aq\fR or \f(CW\*(Aq*@\*(Aq\fR), Hash (\f(CW\*(Aq%\*(Aq\fR or +\&\f(CW\*(Aq*%\*(Aq\fR), Class (\f(CW\*(AqClass_Name\*(Aq\fR or \f(CW\*(Aq*Class_Name\*(Aq\fR) +.ie n .IP "Initializing with ""new""" 4 +.el .IP "Initializing with \f(CWnew\fR" 4 +.IX Item "Initializing with new" +.RE +.RS 4 +.RE +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD +Example 1, Example 2, Example 3 +.IP "Author and Modification History" 4 +.IX Item "Author and Modification History" +.SS "Compress::Raw::Bzip2 \- Low-Level Interface to bzip2 compression library" +.IX Subsection "Compress::Raw::Bzip2 - Low-Level Interface to bzip2 compression library" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Compression 4 +.IX Item "Compression" +.RS 4 +.ie n .IP "($z, $status) = new Compress::Raw::Bzip2 $appendOutput, $blockSize100k, $workfactor;" 4 +.el .IP "($z, \f(CW$status\fR) = new Compress::Raw::Bzip2 \f(CW$appendOutput\fR, \f(CW$blockSize100k\fR, \f(CW$workfactor\fR;" 4 +.IX Item "($z, $status) = new Compress::Raw::Bzip2 $appendOutput, $blockSize100k, $workfactor;" +.PD +\&\fR\f(CB$appendOutput\fR\fB\fR, \fB\fR\f(CB$blockSize100k\fR\fB\fR, \fB\fR\f(CB$workfactor\fR\fB\fR +.ie n .IP "$status = $bz\->bzdeflate($input, $output);" 4 +.el .IP "\f(CW$status\fR = \f(CW$bz\fR\->bzdeflate($input, \f(CW$output\fR);" 4 +.IX Item "$status = $bz->bzdeflate($input, $output);" +.PD 0 +.ie n .IP "$status = $bz\->bzflush($output);" 4 +.el .IP "\f(CW$status\fR = \f(CW$bz\fR\->bzflush($output);" 4 +.IX Item "$status = $bz->bzflush($output);" +.ie n .IP "$status = $bz\->bzclose($output);" 4 +.el .IP "\f(CW$status\fR = \f(CW$bz\fR\->bzclose($output);" 4 +.IX Item "$status = $bz->bzclose($output);" +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP Uncompression 4 +.IX Item "Uncompression" +.RS 4 +.ie n .IP "($z, $status) = new Compress::Raw::Bunzip2 $appendOutput, $consumeInput, $small, $verbosity, $limitOutput;" 4 +.el .IP "($z, \f(CW$status\fR) = new Compress::Raw::Bunzip2 \f(CW$appendOutput\fR, \f(CW$consumeInput\fR, \f(CW$small\fR, \f(CW$verbosity\fR, \f(CW$limitOutput\fR;" 4 +.IX Item "($z, $status) = new Compress::Raw::Bunzip2 $appendOutput, $consumeInput, $small, $verbosity, $limitOutput;" +.PD +\&\fR\f(CB$appendOutput\fR\fB\fR, \fB\fR\f(CB$consumeInput\fR\fB\fR, \fB\fR\f(CB$small\fR\fB\fR, \fB\fR\f(CB$limitOutput\fR\fB\fR, +\&\fB\fR\f(CB$verbosity\fR\fB\fR +.ie n .IP "$status = $z\->bzinflate($input, $output);" 4 +.el .IP "\f(CW$status\fR = \f(CW$z\fR\->bzinflate($input, \f(CW$output\fR);" 4 +.IX Item "$status = $z->bzinflate($input, $output);" +.RE +.RS 4 +.RE +.PD 0 +.IP Misc 4 +.IX Item "Misc" +.RS 4 +.ie n .IP "my $version = \fBCompress::Raw::Bzip2::bzlibversion()\fR;" 4 +.el .IP "my \f(CW$version\fR = \fBCompress::Raw::Bzip2::bzlibversion()\fR;" 4 +.IX Item "my $version = Compress::Raw::Bzip2::bzlibversion();" +.RE +.RS 4 +.RE +.IP Constants 4 +.IX Item "Constants" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Compress::Raw::Zlib \- Low-Level Interface to zlib or zlib-ng compression library" +.IX Subsection "Compress::Raw::Zlib - Low-Level Interface to zlib or zlib-ng compression library" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Compress::Raw::Zlib::Deflate 4 +.IX Item "Compress::Raw::Zlib::Deflate" +.RS 4 +.ie n .IP "\fB($d, \fR\fB$status\fR\fB) = new Compress::Raw::Zlib::Deflate( [OPT] ) \fR" 4 +.el .IP "\fB($d, \fR\f(CB$status\fR\fB) = new Compress::Raw::Zlib::Deflate( [OPT] ) \fR" 4 +.IX Item "($d, $status) = new Compress::Raw::Zlib::Deflate( [OPT] ) " +.PD +\&\fB\-Level\fR, \fB\-Method\fR, \fB\-WindowBits\fR, \fB\-MemLevel\fR, \fB\-Strategy\fR, +\&\fB\-Dictionary\fR, \fB\-Bufsize\fR, \fB\-AppendOutput\fR, \fB\-CRC32\fR, \fB\-ADLER32\fR +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->deflate($input, \fR\fB$output\fR\fB)\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->deflate($input, \fR\f(CB$output\fR\fB)\fR" 4 +.IX Item "$status = $d->deflate($input, $output)" +.PD 0 +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->flush($output [, \fR\fB$flush_type\fR\fB]) \fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->flush($output [, \fR\f(CB$flush_type\fR\fB]) \fR" 4 +.IX Item "$status = $d->flush($output [, $flush_type]) " +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->deflateReset() \fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->deflateReset() \fR" 4 +.IX Item "$status = $d->deflateReset() " +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->deflateParams([OPT])\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->deflateParams([OPT])\fR" 4 +.IX Item "$status = $d->deflateParams([OPT])" +.PD +\&\fB\-Level\fR, \fB\-Strategy\fR, \fB\-BufSize\fR +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->deflateTune($good_length, \fR\fB$max_lazy\fR\fB, \fR\fB$nice_length\fR\fB, \fR\fB$max_chain\fR\fB)\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->deflateTune($good_length, \fR\f(CB$max_lazy\fR\fB, \fR\f(CB$nice_length\fR\fB, \fR\f(CB$max_chain\fR\fB)\fR" 4 +.IX Item "$status = $d->deflateTune($good_length, $max_lazy, $nice_length, $max_chain)" +.PD 0 +.ie n .IP \fR\fB$d\fR\fB\->dict_adler()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->dict_adler()\fR 4 +.IX Item "$d->dict_adler()" +.ie n .IP \fR\fB$d\fR\fB\->crc32()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->crc32()\fR 4 +.IX Item "$d->crc32()" +.ie n .IP \fR\fB$d\fR\fB\->adler32()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->adler32()\fR 4 +.IX Item "$d->adler32()" +.ie n .IP \fR\fB$d\fR\fB\->msg()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->msg()\fR 4 +.IX Item "$d->msg()" +.ie n .IP \fR\fB$d\fR\fB\->total_in()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->total_in()\fR 4 +.IX Item "$d->total_in()" +.ie n .IP \fR\fB$d\fR\fB\->total_out()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->total_out()\fR 4 +.IX Item "$d->total_out()" +.ie n .IP \fR\fB$d\fR\fB\->get_Strategy()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->get_Strategy()\fR 4 +.IX Item "$d->get_Strategy()" +.ie n .IP \fR\fB$d\fR\fB\->get_Level()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->get_Level()\fR 4 +.IX Item "$d->get_Level()" +.ie n .IP \fR\fB$d\fR\fB\->get_BufSize()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->get_BufSize()\fR 4 +.IX Item "$d->get_BufSize()" +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP Compress::Raw::Zlib::Inflate 4 +.IX Item "Compress::Raw::Zlib::Inflate" +.RS 4 +.ie n .IP "\fB ($i, \fR\fB$status\fR\fB) = new Compress::Raw::Zlib::Inflate( [OPT] ) \fR" 4 +.el .IP "\fB ($i, \fR\f(CB$status\fR\fB) = new Compress::Raw::Zlib::Inflate( [OPT] ) \fR" 4 +.IX Item " ($i, $status) = new Compress::Raw::Zlib::Inflate( [OPT] ) " +.PD +\&\fB\-WindowBits\fR, \fB\-Bufsize\fR, \fB\-Dictionary\fR, \fB\-AppendOutput\fR, \fB\-CRC32\fR, +\&\fB\-ADLER32\fR, \fB\-ConsumeInput\fR, \fB\-LimitOutput\fR +.ie n .IP "\fB \fR\fB$status\fR\fB = \fR\fB$i\fR\fB\->inflate($input, \fR\fB$output\fR\fB [,$eof]) \fR" 4 +.el .IP "\fB \fR\f(CB$status\fR\fB = \fR\f(CB$i\fR\fB\->inflate($input, \fR\f(CB$output\fR\fB [,$eof]) \fR" 4 +.IX Item " $status = $i->inflate($input, $output [,$eof]) " +.PD 0 +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$i\fR\fB\->inflateSync($input)\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$i\fR\fB\->inflateSync($input)\fR" 4 +.IX Item "$status = $i->inflateSync($input)" +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$i\fR\fB\->inflateReset() \fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$i\fR\fB\->inflateReset() \fR" 4 +.IX Item "$status = $i->inflateReset() " +.ie n .IP \fR\fB$i\fR\fB\->dict_adler()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->dict_adler()\fR 4 +.IX Item "$i->dict_adler()" +.ie n .IP \fR\fB$i\fR\fB\->crc32()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->crc32()\fR 4 +.IX Item "$i->crc32()" +.ie n .IP \fR\fB$i\fR\fB\->adler32()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->adler32()\fR 4 +.IX Item "$i->adler32()" +.ie n .IP \fR\fB$i\fR\fB\->msg()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->msg()\fR 4 +.IX Item "$i->msg()" +.ie n .IP \fR\fB$i\fR\fB\->total_in()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->total_in()\fR 4 +.IX Item "$i->total_in()" +.ie n .IP \fR\fB$i\fR\fB\->total_out()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->total_out()\fR 4 +.IX Item "$i->total_out()" +.ie n .IP \fR\fB$d\fR\fB\->get_BufSize()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->get_BufSize()\fR 4 +.IX Item "$d->get_BufSize()" +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.IP "CHECKSUM FUNCTIONS" 4 +.IX Item "CHECKSUM FUNCTIONS" +.IP Misc 4 +.IX Item "Misc" +.RS 4 +.ie n .IP "my $version = \fBCompress::Raw::Zlib::zlib_version()\fR;" 4 +.el .IP "my \f(CW$version\fR = \fBCompress::Raw::Zlib::zlib_version()\fR;" 4 +.IX Item "my $version = Compress::Raw::Zlib::zlib_version();" +.ie n .IP "my $version = \fBCompress::Raw::Zlib::zlibng_version()\fR;" 4 +.el .IP "my \f(CW$version\fR = \fBCompress::Raw::Zlib::zlibng_version()\fR;" 4 +.IX Item "my $version = Compress::Raw::Zlib::zlibng_version();" +.ie n .IP "my $flags = \fBCompress::Raw::Zlib::zlibCompileFlags()\fR;" 4 +.el .IP "my \f(CW$flags\fR = \fBCompress::Raw::Zlib::zlibCompileFlags()\fR;" 4 +.IX Item "my $flags = Compress::Raw::Zlib::zlibCompileFlags();" +.IP "\fBis_zlib_native()\fR; =head2 \fBis_zlibng_native()\fR; =head2 \fBis_zlibng_compat()\fR; =head2 \fBis_zlibng()\fR;" 4 +.IX Item "is_zlib_native(); =head2 is_zlibng_native(); =head2 is_zlibng_compat(); =head2 is_zlibng();" +.RE +.RS 4 +.RE +.IP "The LimitOutput option." 4 +.IX Item "The LimitOutput option." +.IP "ACCESSING ZIP FILES" 4 +.IX Item "ACCESSING ZIP FILES" +.IP FAQ 4 +.IX Item "FAQ" +.RS 4 +.IP "Compatibility with Unix compress/uncompress." 4 +.IX Item "Compatibility with Unix compress/uncompress." +.IP "Accessing .tar.Z files" 4 +.IX Item "Accessing .tar.Z files" +.IP "Zlib Library Version Support" 4 +.IX Item "Zlib Library Version Support" +.RE +.RS 4 +.RE +.IP CONSTANTS 4 +.IX Item "CONSTANTS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Compress::Zlib \- Interface to zlib compression library" +.IX Subsection "Compress::Zlib - Interface to zlib compression library" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Notes for users of Compress::Zlib version 1" 4 +.IX Item "Notes for users of Compress::Zlib version 1" +.RE +.RS 4 +.RE +.IP "GZIP INTERFACE" 4 +.IX Item "GZIP INTERFACE" +.PD +\&\fR\f(CB$gz\fR\fB = gzopen($filename, \fR\f(CB$mode\fR\fB)\fR, \fB\fR\f(CB$gz\fR\fB = gzopen($filehandle, \fR\f(CB$mode\fR\fB)\fR, +\&\fB\fR\f(CB$bytesread\fR\fB = \fR\f(CB$gz\fR\fB\->gzread($buffer [, \fR\f(CB$size\fR\fB]) ;\fR, \fB\fR\f(CB$bytesread\fR\fB = +\&\fR\f(CB$gz\fR\fB\->gzreadline($line) ;\fR, \fB\fR\f(CB$byteswritten\fR\fB = \fR\f(CB$gz\fR\fB\->gzwrite($buffer) +;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$gz\fR\fB\->gzflush($flush_type) ;\fR, \fB\fR\f(CB$offset\fR\fB = +\&\fR\f(CB$gz\fR\fB\->gztell() ;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$gz\fR\fB\->gzseek($offset, \fR\f(CB$whence\fR\fB) ;\fR, +\&\fB\fR\f(CB$gz\fR\fB\->gzclose\fR, \fB\fR\f(CB$gz\fR\fB\->gzsetparams($level, \fR\f(CB$strategy\fR\fB\fR, \fB\fR\f(CB$level\fR\fB\fR, +\&\fB\fR\f(CB$strategy\fR\fB\fR, \fB\fR\f(CB$gz\fR\fB\->gzerror\fR, \fB\fR\f(CB$gzerrno\fR\fB\fR +.RS 4 +.IP Examples 4 +.IX Item "Examples" +.PD 0 +.IP Compress::Zlib::memGzip 4 +.IX Item "Compress::Zlib::memGzip" +.IP Compress::Zlib::memGunzip 4 +.IX Item "Compress::Zlib::memGunzip" +.RE +.RS 4 +.RE +.IP COMPRESS/UNCOMPRESS 4 +.IX Item "COMPRESS/UNCOMPRESS" +.PD +\&\fR\f(CB$dest\fR\fB = compress($source [, \fR\f(CB$level\fR\fB] ) ;\fR, \fB\fR\f(CB$dest\fR\fB = uncompress($source) +;\fR +.IP "Deflate Interface" 4 +.IX Item "Deflate Interface" +.RS 4 +.PD 0 +.ie n .IP "\fB($d, \fR\fB$status\fR\fB) = deflateInit( [OPT] )\fR" 4 +.el .IP "\fB($d, \fR\f(CB$status\fR\fB) = deflateInit( [OPT] )\fR" 4 +.IX Item "($d, $status) = deflateInit( [OPT] )" +.PD +\&\fB\-Level\fR, \fB\-Method\fR, \fB\-WindowBits\fR, \fB\-MemLevel\fR, \fB\-Strategy\fR, +\&\fB\-Dictionary\fR, \fB\-Bufsize\fR +.ie n .IP "\fB($out, \fR\fB$status\fR\fB) = \fR\fB$d\fR\fB\->deflate($buffer)\fR" 4 +.el .IP "\fB($out, \fR\f(CB$status\fR\fB) = \fR\f(CB$d\fR\fB\->deflate($buffer)\fR" 4 +.IX Item "($out, $status) = $d->deflate($buffer)" +.PD 0 +.ie n .IP "\fB($out, \fR\fB$status\fR\fB) = \fR\fB$d\fR\fB\->flush()\fR =head2 \fB($out, \fR\fB$status\fR\fB) = \fR\fB$d\fR\fB\->flush($flush_type)\fR" 4 +.el .IP "\fB($out, \fR\f(CB$status\fR\fB) = \fR\f(CB$d\fR\fB\->flush()\fR =head2 \fB($out, \fR\f(CB$status\fR\fB) = \fR\f(CB$d\fR\fB\->flush($flush_type)\fR" 4 +.IX Item "($out, $status) = $d->flush() =head2 ($out, $status) = $d->flush($flush_type)" +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$d\fR\fB\->deflateParams([OPT])\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$d\fR\fB\->deflateParams([OPT])\fR" 4 +.IX Item "$status = $d->deflateParams([OPT])" +.PD +\&\fB\-Level\fR, \fB\-Strategy\fR +.ie n .IP \fR\fB$d\fR\fB\->dict_adler()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->dict_adler()\fR 4 +.IX Item "$d->dict_adler()" +.PD 0 +.ie n .IP \fR\fB$d\fR\fB\->msg()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->msg()\fR 4 +.IX Item "$d->msg()" +.ie n .IP \fR\fB$d\fR\fB\->total_in()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->total_in()\fR 4 +.IX Item "$d->total_in()" +.ie n .IP \fR\fB$d\fR\fB\->total_out()\fR 4 +.el .IP \fR\f(CB$d\fR\fB\->total_out()\fR 4 +.IX Item "$d->total_out()" +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "Inflate Interface" 4 +.IX Item "Inflate Interface" +.RS 4 +.ie n .IP "\fB($i, \fR\fB$status\fR\fB) = inflateInit()\fR" 4 +.el .IP "\fB($i, \fR\f(CB$status\fR\fB) = inflateInit()\fR" 4 +.IX Item "($i, $status) = inflateInit()" +.PD +\&\fB\-WindowBits\fR, \fB\-Bufsize\fR, \fB\-Dictionary\fR +.ie n .IP "\fB($out, \fR\fB$status\fR\fB) = \fR\fB$i\fR\fB\->inflate($buffer)\fR" 4 +.el .IP "\fB($out, \fR\f(CB$status\fR\fB) = \fR\f(CB$i\fR\fB\->inflate($buffer)\fR" 4 +.IX Item "($out, $status) = $i->inflate($buffer)" +.PD 0 +.ie n .IP "\fR\fB$status\fR\fB = \fR\fB$i\fR\fB\->inflateSync($buffer)\fR" 4 +.el .IP "\fR\f(CB$status\fR\fB = \fR\f(CB$i\fR\fB\->inflateSync($buffer)\fR" 4 +.IX Item "$status = $i->inflateSync($buffer)" +.ie n .IP \fR\fB$i\fR\fB\->dict_adler()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->dict_adler()\fR 4 +.IX Item "$i->dict_adler()" +.ie n .IP \fR\fB$i\fR\fB\->msg()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->msg()\fR 4 +.IX Item "$i->msg()" +.ie n .IP \fR\fB$i\fR\fB\->total_in()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->total_in()\fR 4 +.IX Item "$i->total_in()" +.ie n .IP \fR\fB$i\fR\fB\->total_out()\fR 4 +.el .IP \fR\f(CB$i\fR\fB\->total_out()\fR 4 +.IX Item "$i->total_out()" +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "CHECKSUM FUNCTIONS" 4 +.IX Item "CHECKSUM FUNCTIONS" +.IP Misc 4 +.IX Item "Misc" +.RS 4 +.ie n .IP "my $version = \fBCompress::Zlib::zlib_version()\fR;" 4 +.el .IP "my \f(CW$version\fR = \fBCompress::Zlib::zlib_version()\fR;" 4 +.IX Item "my $version = Compress::Zlib::zlib_version();" +.RE +.RS 4 +.RE +.IP CONSTANTS 4 +.IX Item "CONSTANTS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Config, =for comment Generated by configpm. Any changes made here will be lost!" +.IX Subsection "Config, =for comment Generated by configpm. Any changes made here will be lost!" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBmyconfig()\fR, \fBconfig_sh()\fR, config_re($regex), config_vars(@names), +\&\fBbincompat_options()\fR, \fBnon_bincompat_options()\fR, \fBcompile_date()\fR, +\&\fBlocal_patches()\fR, \fBheader_files()\fR +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP WARNING 4 +.IX Item "WARNING" +.IP GLOSSARY 4 +.IX Item "GLOSSARY" +.IP P 4 +.IX Item "P" +.PD +\&\f(CW\*(C`PERL_API_REVISION\*(C'\fR, \f(CW\*(C`PERL_API_SUBVERSION\*(C'\fR, \f(CW\*(C`PERL_API_VERSION\*(C'\fR, +\&\f(CW\*(C`PERL_CONFIG_SH\*(C'\fR, \f(CW\*(C`PERL_PATCHLEVEL\*(C'\fR, \f(CW\*(C`PERL_REVISION\*(C'\fR, +\&\f(CW\*(C`PERL_SUBVERSION\*(C'\fR, \f(CW\*(C`PERL_VERSION\*(C'\fR +.IP _ 4 +.IX Item "_" +\&\f(CW\*(C`_a\*(C'\fR, \f(CW\*(C`_exe\*(C'\fR, \f(CW\*(C`_o\*(C'\fR +.IP a 4 +.IX Item "a" +\&\f(CW\*(C`afs\*(C'\fR, \f(CW\*(C`afsroot\*(C'\fR, \f(CW\*(C`alignbytes\*(C'\fR, \f(CW\*(C`aphostname\*(C'\fR, \f(CW\*(C`api_revision\*(C'\fR, +\&\f(CW\*(C`api_subversion\*(C'\fR, \f(CW\*(C`api_version\*(C'\fR, \f(CW\*(C`api_versionstring\*(C'\fR, \f(CW\*(C`ar\*(C'\fR, \f(CW\*(C`archlib\*(C'\fR, +\&\f(CW\*(C`archlibexp\*(C'\fR, \f(CW\*(C`archname\*(C'\fR, \f(CW\*(C`archname64\*(C'\fR, \f(CW\*(C`archobjs\*(C'\fR, \f(CW\*(C`asctime_r_proto\*(C'\fR, +\&\f(CW\*(C`awk\*(C'\fR +.IP b 4 +.IX Item "b" +\&\f(CW\*(C`baserev\*(C'\fR, \f(CW\*(C`bash\*(C'\fR, \f(CW\*(C`bin\*(C'\fR, \f(CW\*(C`bin_ELF\*(C'\fR, \f(CW\*(C`binexp\*(C'\fR, \f(CW\*(C`bison\*(C'\fR, \f(CW\*(C`byacc\*(C'\fR, +\&\f(CW\*(C`byteorder\*(C'\fR +.IP c 4 +.IX Item "c" +\&\f(CW\*(C`c\*(C'\fR, \f(CW\*(C`castflags\*(C'\fR, \f(CW\*(C`cat\*(C'\fR, \f(CW\*(C`cc\*(C'\fR, \f(CW\*(C`cccdlflags\*(C'\fR, \f(CW\*(C`ccdlflags\*(C'\fR, \f(CW\*(C`ccflags\*(C'\fR, +\&\f(CW\*(C`ccflags_uselargefiles\*(C'\fR, \f(CW\*(C`ccname\*(C'\fR, \f(CW\*(C`ccsymbols\*(C'\fR, \f(CW\*(C`ccversion\*(C'\fR, \f(CW\*(C`cf_by\*(C'\fR, +\&\f(CW\*(C`cf_email\*(C'\fR, \f(CW\*(C`cf_time\*(C'\fR, \f(CW\*(C`charbits\*(C'\fR, \f(CW\*(C`charsize\*(C'\fR, \f(CW\*(C`chgrp\*(C'\fR, \f(CW\*(C`chmod\*(C'\fR, +\&\f(CW\*(C`chown\*(C'\fR, \f(CW\*(C`clocktype\*(C'\fR, \f(CW\*(C`comm\*(C'\fR, \f(CW\*(C`compiler_warning\*(C'\fR, \f(CW\*(C`compress\*(C'\fR, +\&\f(CW\*(C`config_arg0\*(C'\fR, \f(CW\*(C`config_argc\*(C'\fR, \f(CW\*(C`config_args\*(C'\fR, \f(CW\*(C`contains\*(C'\fR, \f(CW\*(C`cp\*(C'\fR, +\&\f(CW\*(C`cpio\*(C'\fR, \f(CW\*(C`cpp\*(C'\fR, \f(CW\*(C`cpp_stuff\*(C'\fR, \f(CW\*(C`cppccsymbols\*(C'\fR, \f(CW\*(C`cppflags\*(C'\fR, \f(CW\*(C`cpplast\*(C'\fR, +\&\f(CW\*(C`cppminus\*(C'\fR, \f(CW\*(C`cpprun\*(C'\fR, \f(CW\*(C`cppstdin\*(C'\fR, \f(CW\*(C`cppsymbols\*(C'\fR, \f(CW\*(C`crypt_r_proto\*(C'\fR, +\&\f(CW\*(C`cryptlib\*(C'\fR, \f(CW\*(C`csh\*(C'\fR, \f(CW\*(C`ctermid_r_proto\*(C'\fR, \f(CW\*(C`ctime_r_proto\*(C'\fR +.IP d 4 +.IX Item "d" +\&\f(CW\*(C`d_Gconvert\*(C'\fR, \f(CW\*(C`d_PRIEUldbl\*(C'\fR, \f(CW\*(C`d_PRIFUldbl\*(C'\fR, \f(CW\*(C`d_PRIGUldbl\*(C'\fR, +\&\f(CW\*(C`d_PRIXU64\*(C'\fR, \f(CW\*(C`d_PRId64\*(C'\fR, \f(CW\*(C`d_PRIeldbl\*(C'\fR, \f(CW\*(C`d_PRIfldbl\*(C'\fR, \f(CW\*(C`d_PRIgldbl\*(C'\fR, +\&\f(CW\*(C`d_PRIi64\*(C'\fR, \f(CW\*(C`d_PRIo64\*(C'\fR, \f(CW\*(C`d_PRIu64\*(C'\fR, \f(CW\*(C`d_PRIx64\*(C'\fR, \f(CW\*(C`d_SCNfldbl\*(C'\fR, +\&\f(CW\*(C`d_\|_fwalk\*(C'\fR, \f(CW\*(C`d_accept4\*(C'\fR, \f(CW\*(C`d_access\*(C'\fR, \f(CW\*(C`d_accessx\*(C'\fR, \f(CW\*(C`d_acosh\*(C'\fR, +\&\f(CW\*(C`d_aintl\*(C'\fR, \f(CW\*(C`d_alarm\*(C'\fR, \f(CW\*(C`d_archlib\*(C'\fR, \f(CW\*(C`d_asctime64\*(C'\fR, \f(CW\*(C`d_asctime_r\*(C'\fR, +\&\f(CW\*(C`d_asinh\*(C'\fR, \f(CW\*(C`d_atanh\*(C'\fR, \f(CW\*(C`d_atolf\*(C'\fR, \f(CW\*(C`d_atoll\*(C'\fR, +\&\f(CW\*(C`d_attribute_always_inline\*(C'\fR, \f(CW\*(C`d_attribute_deprecated\*(C'\fR, +\&\f(CW\*(C`d_attribute_format\*(C'\fR, \f(CW\*(C`d_attribute_malloc\*(C'\fR, \f(CW\*(C`d_attribute_nonnull\*(C'\fR, +\&\f(CW\*(C`d_attribute_noreturn\*(C'\fR, \f(CW\*(C`d_attribute_pure\*(C'\fR, \f(CW\*(C`d_attribute_unused\*(C'\fR, +\&\f(CW\*(C`d_attribute_visibility\*(C'\fR, \f(CW\*(C`d_attribute_warn_unused_result\*(C'\fR, +\&\f(CW\*(C`d_backtrace\*(C'\fR, \f(CW\*(C`d_bsd\*(C'\fR, \f(CW\*(C`d_bsdgetpgrp\*(C'\fR, \f(CW\*(C`d_bsdsetpgrp\*(C'\fR, +\&\f(CW\*(C`d_builtin_add_overflow\*(C'\fR, \f(CW\*(C`d_builtin_choose_expr\*(C'\fR, \f(CW\*(C`d_builtin_expect\*(C'\fR, +\&\f(CW\*(C`d_builtin_mul_overflow\*(C'\fR, \f(CW\*(C`d_builtin_sub_overflow\*(C'\fR, +\&\f(CW\*(C`d_c99_variadic_macros\*(C'\fR, \f(CW\*(C`d_casti32\*(C'\fR, \f(CW\*(C`d_castneg\*(C'\fR, \f(CW\*(C`d_cbrt\*(C'\fR, +\&\f(CW\*(C`d_chown\*(C'\fR, \f(CW\*(C`d_chroot\*(C'\fR, \f(CW\*(C`d_chsize\*(C'\fR, \f(CW\*(C`d_class\*(C'\fR, \f(CW\*(C`d_clearenv\*(C'\fR, +\&\f(CW\*(C`d_closedir\*(C'\fR, \f(CW\*(C`d_cmsghdr_s\*(C'\fR, \f(CW\*(C`d_copysign\*(C'\fR, \f(CW\*(C`d_copysignl\*(C'\fR, +\&\f(CW\*(C`d_cplusplus\*(C'\fR, \f(CW\*(C`d_crypt\*(C'\fR, \f(CW\*(C`d_crypt_r\*(C'\fR, \f(CW\*(C`d_csh\*(C'\fR, \f(CW\*(C`d_ctermid\*(C'\fR, +\&\f(CW\*(C`d_ctermid_r\*(C'\fR, \f(CW\*(C`d_ctime64\*(C'\fR, \f(CW\*(C`d_ctime_r\*(C'\fR, \f(CW\*(C`d_cuserid\*(C'\fR, +\&\f(CW\*(C`d_dbminitproto\*(C'\fR, \f(CW\*(C`d_difftime\*(C'\fR, \f(CW\*(C`d_difftime64\*(C'\fR, \f(CW\*(C`d_dir_dd_fd\*(C'\fR, +\&\f(CW\*(C`d_dirfd\*(C'\fR, \f(CW\*(C`d_dirnamlen\*(C'\fR, \f(CW\*(C`d_dladdr\*(C'\fR, \f(CW\*(C`d_dlerror\*(C'\fR, \f(CW\*(C`d_dlopen\*(C'\fR, +\&\f(CW\*(C`d_dlsymun\*(C'\fR, \f(CW\*(C`d_dosuid\*(C'\fR, \f(CW\*(C`d_double_has_inf\*(C'\fR, \f(CW\*(C`d_double_has_nan\*(C'\fR, +\&\f(CW\*(C`d_double_has_negative_zero\*(C'\fR, \f(CW\*(C`d_double_has_subnormals\*(C'\fR, +\&\f(CW\*(C`d_double_style_cray\*(C'\fR, \f(CW\*(C`d_double_style_ibm\*(C'\fR, \f(CW\*(C`d_double_style_ieee\*(C'\fR, +\&\f(CW\*(C`d_double_style_vax\*(C'\fR, \f(CW\*(C`d_drand48_r\*(C'\fR, \f(CW\*(C`d_drand48proto\*(C'\fR, \f(CW\*(C`d_dup2\*(C'\fR, +\&\f(CW\*(C`d_dup3\*(C'\fR, \f(CW\*(C`d_duplocale\*(C'\fR, \f(CW\*(C`d_eaccess\*(C'\fR, \f(CW\*(C`d_endgrent\*(C'\fR, \f(CW\*(C`d_endgrent_r\*(C'\fR, +\&\f(CW\*(C`d_endhent\*(C'\fR, \f(CW\*(C`d_endhostent_r\*(C'\fR, \f(CW\*(C`d_endnent\*(C'\fR, \f(CW\*(C`d_endnetent_r\*(C'\fR, +\&\f(CW\*(C`d_endpent\*(C'\fR, \f(CW\*(C`d_endprotoent_r\*(C'\fR, \f(CW\*(C`d_endpwent\*(C'\fR, \f(CW\*(C`d_endpwent_r\*(C'\fR, +\&\f(CW\*(C`d_endsent\*(C'\fR, \f(CW\*(C`d_endservent_r\*(C'\fR, \f(CW\*(C`d_eofnblk\*(C'\fR, \f(CW\*(C`d_erf\*(C'\fR, \f(CW\*(C`d_erfc\*(C'\fR, +\&\f(CW\*(C`d_eunice\*(C'\fR, \f(CW\*(C`d_exp2\*(C'\fR, \f(CW\*(C`d_expm1\*(C'\fR, \f(CW\*(C`d_faststdio\*(C'\fR, \f(CW\*(C`d_fchdir\*(C'\fR, +\&\f(CW\*(C`d_fchmod\*(C'\fR, \f(CW\*(C`d_fchmodat\*(C'\fR, \f(CW\*(C`d_fchown\*(C'\fR, \f(CW\*(C`d_fcntl\*(C'\fR, \f(CW\*(C`d_fcntl_can_lock\*(C'\fR, +\&\f(CW\*(C`d_fd_macros\*(C'\fR, \f(CW\*(C`d_fd_set\*(C'\fR, \f(CW\*(C`d_fdclose\*(C'\fR, \f(CW\*(C`d_fdim\*(C'\fR, \f(CW\*(C`d_fds_bits\*(C'\fR, +\&\f(CW\*(C`d_fegetround\*(C'\fR, \f(CW\*(C`d_ffs\*(C'\fR, \f(CW\*(C`d_ffsl\*(C'\fR, \f(CW\*(C`d_fgetpos\*(C'\fR, \f(CW\*(C`d_finite\*(C'\fR, +\&\f(CW\*(C`d_finitel\*(C'\fR, \f(CW\*(C`d_flexfnam\*(C'\fR, \f(CW\*(C`d_flock\*(C'\fR, \f(CW\*(C`d_flockproto\*(C'\fR, \f(CW\*(C`d_fma\*(C'\fR, +\&\f(CW\*(C`d_fmax\*(C'\fR, \f(CW\*(C`d_fmin\*(C'\fR, \f(CW\*(C`d_fork\*(C'\fR, \f(CW\*(C`d_fp_class\*(C'\fR, \f(CW\*(C`d_fp_classify\*(C'\fR, +\&\f(CW\*(C`d_fp_classl\*(C'\fR, \f(CW\*(C`d_fpathconf\*(C'\fR, \f(CW\*(C`d_fpclass\*(C'\fR, \f(CW\*(C`d_fpclassify\*(C'\fR, +\&\f(CW\*(C`d_fpclassl\*(C'\fR, \f(CW\*(C`d_fpgetround\*(C'\fR, \f(CW\*(C`d_fpos64_t\*(C'\fR, \f(CW\*(C`d_freelocale\*(C'\fR, +\&\f(CW\*(C`d_frexpl\*(C'\fR, \f(CW\*(C`d_fs_data_s\*(C'\fR, \f(CW\*(C`d_fseeko\*(C'\fR, \f(CW\*(C`d_fsetpos\*(C'\fR, \f(CW\*(C`d_fstatfs\*(C'\fR, +\&\f(CW\*(C`d_fstatvfs\*(C'\fR, \f(CW\*(C`d_fsync\*(C'\fR, \f(CW\*(C`d_ftello\*(C'\fR, \f(CW\*(C`d_ftime\*(C'\fR, \f(CW\*(C`d_futimes\*(C'\fR, +\&\f(CW\*(C`d_gai_strerror\*(C'\fR, \f(CW\*(C`d_gdbm_ndbm_h_uses_prototypes\*(C'\fR, +\&\f(CW\*(C`d_gdbmndbm_h_uses_prototypes\*(C'\fR, \f(CW\*(C`d_getaddrinfo\*(C'\fR, \f(CW\*(C`d_getcwd\*(C'\fR, +\&\f(CW\*(C`d_getenv_preserves_other_thread\*(C'\fR, \f(CW\*(C`d_getespwnam\*(C'\fR, \f(CW\*(C`d_getfsstat\*(C'\fR, +\&\f(CW\*(C`d_getgrent\*(C'\fR, \f(CW\*(C`d_getgrent_r\*(C'\fR, \f(CW\*(C`d_getgrgid_r\*(C'\fR, \f(CW\*(C`d_getgrnam_r\*(C'\fR, +\&\f(CW\*(C`d_getgrps\*(C'\fR, \f(CW\*(C`d_gethbyaddr\*(C'\fR, \f(CW\*(C`d_gethbyname\*(C'\fR, \f(CW\*(C`d_gethent\*(C'\fR, +\&\f(CW\*(C`d_gethname\*(C'\fR, \f(CW\*(C`d_gethostbyaddr_r\*(C'\fR, \f(CW\*(C`d_gethostbyname_r\*(C'\fR, +\&\f(CW\*(C`d_gethostent_r\*(C'\fR, \f(CW\*(C`d_gethostprotos\*(C'\fR, \f(CW\*(C`d_getitimer\*(C'\fR, \f(CW\*(C`d_getlogin\*(C'\fR, +\&\f(CW\*(C`d_getlogin_r\*(C'\fR, \f(CW\*(C`d_getmnt\*(C'\fR, \f(CW\*(C`d_getmntent\*(C'\fR, \f(CW\*(C`d_getnameinfo\*(C'\fR, +\&\f(CW\*(C`d_getnbyaddr\*(C'\fR, \f(CW\*(C`d_getnbyname\*(C'\fR, \f(CW\*(C`d_getnent\*(C'\fR, \f(CW\*(C`d_getnetbyaddr_r\*(C'\fR, +\&\f(CW\*(C`d_getnetbyname_r\*(C'\fR, \f(CW\*(C`d_getnetent_r\*(C'\fR, \f(CW\*(C`d_getnetprotos\*(C'\fR, \f(CW\*(C`d_getpagsz\*(C'\fR, +\&\f(CW\*(C`d_getpbyname\*(C'\fR, \f(CW\*(C`d_getpbynumber\*(C'\fR, \f(CW\*(C`d_getpent\*(C'\fR, \f(CW\*(C`d_getpgid\*(C'\fR, +\&\f(CW\*(C`d_getpgrp\*(C'\fR, \f(CW\*(C`d_getpgrp2\*(C'\fR, \f(CW\*(C`d_getppid\*(C'\fR, \f(CW\*(C`d_getprior\*(C'\fR, +\&\f(CW\*(C`d_getprotobyname_r\*(C'\fR, \f(CW\*(C`d_getprotobynumber_r\*(C'\fR, \f(CW\*(C`d_getprotoent_r\*(C'\fR, +\&\f(CW\*(C`d_getprotoprotos\*(C'\fR, \f(CW\*(C`d_getprpwnam\*(C'\fR, \f(CW\*(C`d_getpwent\*(C'\fR, \f(CW\*(C`d_getpwent_r\*(C'\fR, +\&\f(CW\*(C`d_getpwnam_r\*(C'\fR, \f(CW\*(C`d_getpwuid_r\*(C'\fR, \f(CW\*(C`d_getsbyname\*(C'\fR, \f(CW\*(C`d_getsbyport\*(C'\fR, +\&\f(CW\*(C`d_getsent\*(C'\fR, \f(CW\*(C`d_getservbyname_r\*(C'\fR, \f(CW\*(C`d_getservbyport_r\*(C'\fR, +\&\f(CW\*(C`d_getservent_r\*(C'\fR, \f(CW\*(C`d_getservprotos\*(C'\fR, \f(CW\*(C`d_getspnam\*(C'\fR, \f(CW\*(C`d_getspnam_r\*(C'\fR, +\&\f(CW\*(C`d_gettimeod\*(C'\fR, \f(CW\*(C`d_gmtime64\*(C'\fR, \f(CW\*(C`d_gmtime_r\*(C'\fR, \f(CW\*(C`d_gnulibc\*(C'\fR, \f(CW\*(C`d_grpasswd\*(C'\fR, +\&\f(CW\*(C`d_has_C_UTF8\*(C'\fR, \f(CW\*(C`d_hasmntopt\*(C'\fR, \f(CW\*(C`d_htonl\*(C'\fR, \f(CW\*(C`d_hypot\*(C'\fR, \f(CW\*(C`d_ilogb\*(C'\fR, +\&\f(CW\*(C`d_ilogbl\*(C'\fR, \f(CW\*(C`d_inc_version_list\*(C'\fR, \f(CW\*(C`d_inetaton\*(C'\fR, \f(CW\*(C`d_inetntop\*(C'\fR, +\&\f(CW\*(C`d_inetpton\*(C'\fR, \f(CW\*(C`d_int64_t\*(C'\fR, \f(CW\*(C`d_ip_mreq\*(C'\fR, \f(CW\*(C`d_ip_mreq_source\*(C'\fR, +\&\f(CW\*(C`d_ipv6_mreq\*(C'\fR, \f(CW\*(C`d_ipv6_mreq_source\*(C'\fR, \f(CW\*(C`d_isascii\*(C'\fR, \f(CW\*(C`d_isblank\*(C'\fR, +\&\f(CW\*(C`d_isfinite\*(C'\fR, \f(CW\*(C`d_isfinitel\*(C'\fR, \f(CW\*(C`d_isinf\*(C'\fR, \f(CW\*(C`d_isinfl\*(C'\fR, \f(CW\*(C`d_isless\*(C'\fR, +\&\f(CW\*(C`d_isnan\*(C'\fR, \f(CW\*(C`d_isnanl\*(C'\fR, \f(CW\*(C`d_isnormal\*(C'\fR, \f(CW\*(C`d_j0\*(C'\fR, \f(CW\*(C`d_j0l\*(C'\fR, \f(CW\*(C`d_killpg\*(C'\fR, +\&\f(CW\*(C`d_lc_monetary_2008\*(C'\fR, \f(CW\*(C`d_lchown\*(C'\fR, \f(CW\*(C`d_ldbl_dig\*(C'\fR, \f(CW\*(C`d_ldexpl\*(C'\fR, +\&\f(CW\*(C`d_lgamma\*(C'\fR, \f(CW\*(C`d_lgamma_r\*(C'\fR, \f(CW\*(C`d_libm_lib_version\*(C'\fR, \f(CW\*(C`d_libname_unique\*(C'\fR, +\&\f(CW\*(C`d_link\*(C'\fR, \f(CW\*(C`d_linkat\*(C'\fR, \f(CW\*(C`d_llrint\*(C'\fR, \f(CW\*(C`d_llrintl\*(C'\fR, \f(CW\*(C`d_llround\*(C'\fR, +\&\f(CW\*(C`d_llroundl\*(C'\fR, \f(CW\*(C`d_localeconv_l\*(C'\fR, \f(CW\*(C`d_localtime64\*(C'\fR, \f(CW\*(C`d_localtime_r\*(C'\fR, +\&\f(CW\*(C`d_localtime_r_needs_tzset\*(C'\fR, \f(CW\*(C`d_locconv\*(C'\fR, \f(CW\*(C`d_lockf\*(C'\fR, \f(CW\*(C`d_log1p\*(C'\fR, +\&\f(CW\*(C`d_log2\*(C'\fR, \f(CW\*(C`d_logb\*(C'\fR, \f(CW\*(C`d_long_double_style_ieee\*(C'\fR, +\&\f(CW\*(C`d_long_double_style_ieee_doubledouble\*(C'\fR, +\&\f(CW\*(C`d_long_double_style_ieee_extended\*(C'\fR, \f(CW\*(C`d_long_double_style_ieee_std\*(C'\fR, +\&\f(CW\*(C`d_long_double_style_vax\*(C'\fR, \f(CW\*(C`d_longdbl\*(C'\fR, \f(CW\*(C`d_longlong\*(C'\fR, \f(CW\*(C`d_lrint\*(C'\fR, +\&\f(CW\*(C`d_lrintl\*(C'\fR, \f(CW\*(C`d_lround\*(C'\fR, \f(CW\*(C`d_lroundl\*(C'\fR, \f(CW\*(C`d_lseekproto\*(C'\fR, \f(CW\*(C`d_lstat\*(C'\fR, +\&\f(CW\*(C`d_madvise\*(C'\fR, \f(CW\*(C`d_malloc_good_size\*(C'\fR, \f(CW\*(C`d_malloc_size\*(C'\fR, +\&\f(CW\*(C`d_malloc_usable_size\*(C'\fR, \f(CW\*(C`d_mblen\*(C'\fR, \f(CW\*(C`d_mbrlen\*(C'\fR, \f(CW\*(C`d_mbrtowc\*(C'\fR, +\&\f(CW\*(C`d_mbstowcs\*(C'\fR, \f(CW\*(C`d_mbtowc\*(C'\fR, \f(CW\*(C`d_memmem\*(C'\fR, \f(CW\*(C`d_memrchr\*(C'\fR, \f(CW\*(C`d_mkdir\*(C'\fR, +\&\f(CW\*(C`d_mkdtemp\*(C'\fR, \f(CW\*(C`d_mkfifo\*(C'\fR, \f(CW\*(C`d_mkostemp\*(C'\fR, \f(CW\*(C`d_mkstemp\*(C'\fR, \f(CW\*(C`d_mkstemps\*(C'\fR, +\&\f(CW\*(C`d_mktime\*(C'\fR, \f(CW\*(C`d_mktime64\*(C'\fR, \f(CW\*(C`d_mmap\*(C'\fR, \f(CW\*(C`d_modfl\*(C'\fR, \f(CW\*(C`d_modflproto\*(C'\fR, +\&\f(CW\*(C`d_mprotect\*(C'\fR, \f(CW\*(C`d_msg\*(C'\fR, \f(CW\*(C`d_msg_ctrunc\*(C'\fR, \f(CW\*(C`d_msg_dontroute\*(C'\fR, \f(CW\*(C`d_msg_oob\*(C'\fR, +\&\f(CW\*(C`d_msg_peek\*(C'\fR, \f(CW\*(C`d_msg_proxy\*(C'\fR, \f(CW\*(C`d_msgctl\*(C'\fR, \f(CW\*(C`d_msgget\*(C'\fR, \f(CW\*(C`d_msghdr_s\*(C'\fR, +\&\f(CW\*(C`d_msgrcv\*(C'\fR, \f(CW\*(C`d_msgsnd\*(C'\fR, \f(CW\*(C`d_msync\*(C'\fR, \f(CW\*(C`d_munmap\*(C'\fR, \f(CW\*(C`d_mymalloc\*(C'\fR, \f(CW\*(C`d_nan\*(C'\fR, +\&\f(CW\*(C`d_nanosleep\*(C'\fR, \f(CW\*(C`d_ndbm\*(C'\fR, \f(CW\*(C`d_ndbm_h_uses_prototypes\*(C'\fR, \f(CW\*(C`d_nearbyint\*(C'\fR, +\&\f(CW\*(C`d_newlocale\*(C'\fR, \f(CW\*(C`d_nextafter\*(C'\fR, \f(CW\*(C`d_nexttoward\*(C'\fR, \f(CW\*(C`d_nice\*(C'\fR, +\&\f(CW\*(C`d_nl_langinfo\*(C'\fR, \f(CW\*(C`d_nl_langinfo_l\*(C'\fR, \f(CW\*(C`d_non_int_bitfields\*(C'\fR, +\&\f(CW\*(C`d_nv_preserves_uv\*(C'\fR, \f(CW\*(C`d_nv_zero_is_allbits_zero\*(C'\fR, \f(CW\*(C`d_off64_t\*(C'\fR, +\&\f(CW\*(C`d_old_pthread_create_joinable\*(C'\fR, \f(CW\*(C`d_oldpthreads\*(C'\fR, \f(CW\*(C`d_oldsock\*(C'\fR, +\&\f(CW\*(C`d_open3\*(C'\fR, \f(CW\*(C`d_openat\*(C'\fR, \f(CW\*(C`d_pathconf\*(C'\fR, \f(CW\*(C`d_pause\*(C'\fR, \f(CW\*(C`d_perl_otherlibdirs\*(C'\fR, +\&\f(CW\*(C`d_phostname\*(C'\fR, \f(CW\*(C`d_pipe\*(C'\fR, \f(CW\*(C`d_pipe2\*(C'\fR, \f(CW\*(C`d_poll\*(C'\fR, \f(CW\*(C`d_portable\*(C'\fR, +\&\f(CW\*(C`d_prctl\*(C'\fR, \f(CW\*(C`d_prctl_set_name\*(C'\fR, \f(CW\*(C`d_printf_format_null\*(C'\fR, \f(CW\*(C`d_procselfexe\*(C'\fR, +\&\f(CW\*(C`d_pseudofork\*(C'\fR, \f(CW\*(C`d_pthread_atfork\*(C'\fR, \f(CW\*(C`d_pthread_attr_setscope\*(C'\fR, +\&\f(CW\*(C`d_pthread_yield\*(C'\fR, \f(CW\*(C`d_ptrdiff_t\*(C'\fR, \f(CW\*(C`d_pwage\*(C'\fR, \f(CW\*(C`d_pwchange\*(C'\fR, +\&\f(CW\*(C`d_pwclass\*(C'\fR, \f(CW\*(C`d_pwcomment\*(C'\fR, \f(CW\*(C`d_pwexpire\*(C'\fR, \f(CW\*(C`d_pwgecos\*(C'\fR, \f(CW\*(C`d_pwpasswd\*(C'\fR, +\&\f(CW\*(C`d_pwquota\*(C'\fR, \f(CW\*(C`d_qgcvt\*(C'\fR, \f(CW\*(C`d_quad\*(C'\fR, \f(CW\*(C`d_querylocale\*(C'\fR, \f(CW\*(C`d_random_r\*(C'\fR, +\&\f(CW\*(C`d_re_comp\*(C'\fR, \f(CW\*(C`d_readdir\*(C'\fR, \f(CW\*(C`d_readdir64_r\*(C'\fR, \f(CW\*(C`d_readdir_r\*(C'\fR, +\&\f(CW\*(C`d_readlink\*(C'\fR, \f(CW\*(C`d_readv\*(C'\fR, \f(CW\*(C`d_recvmsg\*(C'\fR, \f(CW\*(C`d_regcmp\*(C'\fR, \f(CW\*(C`d_regcomp\*(C'\fR, +\&\f(CW\*(C`d_remainder\*(C'\fR, \f(CW\*(C`d_remquo\*(C'\fR, \f(CW\*(C`d_rename\*(C'\fR, \f(CW\*(C`d_renameat\*(C'\fR, \f(CW\*(C`d_rewinddir\*(C'\fR, +\&\f(CW\*(C`d_rint\*(C'\fR, \f(CW\*(C`d_rmdir\*(C'\fR, \f(CW\*(C`d_round\*(C'\fR, \f(CW\*(C`d_sbrkproto\*(C'\fR, \f(CW\*(C`d_scalbn\*(C'\fR, +\&\f(CW\*(C`d_scalbnl\*(C'\fR, \f(CW\*(C`d_sched_yield\*(C'\fR, \f(CW\*(C`d_scm_rights\*(C'\fR, \f(CW\*(C`d_seekdir\*(C'\fR, \f(CW\*(C`d_select\*(C'\fR, +\&\f(CW\*(C`d_sem\*(C'\fR, \f(CW\*(C`d_semctl\*(C'\fR, \f(CW\*(C`d_semctl_semid_ds\*(C'\fR, \f(CW\*(C`d_semctl_semun\*(C'\fR, +\&\f(CW\*(C`d_semget\*(C'\fR, \f(CW\*(C`d_semop\*(C'\fR, \f(CW\*(C`d_sendmsg\*(C'\fR, \f(CW\*(C`d_setegid\*(C'\fR, \f(CW\*(C`d_setenv\*(C'\fR, +\&\f(CW\*(C`d_seteuid\*(C'\fR, \f(CW\*(C`d_setgrent\*(C'\fR, \f(CW\*(C`d_setgrent_r\*(C'\fR, \f(CW\*(C`d_setgrps\*(C'\fR, \f(CW\*(C`d_sethent\*(C'\fR, +\&\f(CW\*(C`d_sethostent_r\*(C'\fR, \f(CW\*(C`d_setitimer\*(C'\fR, \f(CW\*(C`d_setlinebuf\*(C'\fR, \f(CW\*(C`d_setlocale\*(C'\fR, +\&\f(CW\*(C`d_setlocale_accepts_any_locale_name\*(C'\fR, \f(CW\*(C`d_setlocale_r\*(C'\fR, \f(CW\*(C`d_setnent\*(C'\fR, +\&\f(CW\*(C`d_setnetent_r\*(C'\fR, \f(CW\*(C`d_setpent\*(C'\fR, \f(CW\*(C`d_setpgid\*(C'\fR, \f(CW\*(C`d_setpgrp\*(C'\fR, \f(CW\*(C`d_setpgrp2\*(C'\fR, +\&\f(CW\*(C`d_setprior\*(C'\fR, \f(CW\*(C`d_setproctitle\*(C'\fR, \f(CW\*(C`d_setprotoent_r\*(C'\fR, \f(CW\*(C`d_setpwent\*(C'\fR, +\&\f(CW\*(C`d_setpwent_r\*(C'\fR, \f(CW\*(C`d_setregid\*(C'\fR, \f(CW\*(C`d_setresgid\*(C'\fR, \f(CW\*(C`d_setresuid\*(C'\fR, +\&\f(CW\*(C`d_setreuid\*(C'\fR, \f(CW\*(C`d_setrgid\*(C'\fR, \f(CW\*(C`d_setruid\*(C'\fR, \f(CW\*(C`d_setsent\*(C'\fR, \f(CW\*(C`d_setservent_r\*(C'\fR, +\&\f(CW\*(C`d_setsid\*(C'\fR, \f(CW\*(C`d_setvbuf\*(C'\fR, \f(CW\*(C`d_shm\*(C'\fR, \f(CW\*(C`d_shmat\*(C'\fR, \f(CW\*(C`d_shmatprototype\*(C'\fR, +\&\f(CW\*(C`d_shmctl\*(C'\fR, \f(CW\*(C`d_shmdt\*(C'\fR, \f(CW\*(C`d_shmget\*(C'\fR, \f(CW\*(C`d_sigaction\*(C'\fR, \f(CW\*(C`d_siginfo_si_addr\*(C'\fR, +\&\f(CW\*(C`d_siginfo_si_band\*(C'\fR, \f(CW\*(C`d_siginfo_si_errno\*(C'\fR, \f(CW\*(C`d_siginfo_si_fd\*(C'\fR, +\&\f(CW\*(C`d_siginfo_si_pid\*(C'\fR, \f(CW\*(C`d_siginfo_si_status\*(C'\fR, \f(CW\*(C`d_siginfo_si_uid\*(C'\fR, +\&\f(CW\*(C`d_siginfo_si_value\*(C'\fR, \f(CW\*(C`d_signbit\*(C'\fR, \f(CW\*(C`d_sigprocmask\*(C'\fR, \f(CW\*(C`d_sigsetjmp\*(C'\fR, +\&\f(CW\*(C`d_sin6_scope_id\*(C'\fR, \f(CW\*(C`d_sitearch\*(C'\fR, \f(CW\*(C`d_snprintf\*(C'\fR, \f(CW\*(C`d_sockaddr_in6\*(C'\fR, +\&\f(CW\*(C`d_sockaddr_sa_len\*(C'\fR, \f(CW\*(C`d_sockaddr_storage\*(C'\fR, \f(CW\*(C`d_sockatmark\*(C'\fR, +\&\f(CW\*(C`d_sockatmarkproto\*(C'\fR, \f(CW\*(C`d_socket\*(C'\fR, \f(CW\*(C`d_socklen_t\*(C'\fR, \f(CW\*(C`d_sockpair\*(C'\fR, +\&\f(CW\*(C`d_socks5_init\*(C'\fR, \f(CW\*(C`d_sqrtl\*(C'\fR, \f(CW\*(C`d_srand48_r\*(C'\fR, \f(CW\*(C`d_srandom_r\*(C'\fR, +\&\f(CW\*(C`d_sresgproto\*(C'\fR, \f(CW\*(C`d_sresuproto\*(C'\fR, \f(CW\*(C`d_stat\*(C'\fR, \f(CW\*(C`d_statblks\*(C'\fR, +\&\f(CW\*(C`d_statfs_f_flags\*(C'\fR, \f(CW\*(C`d_statfs_s\*(C'\fR, \f(CW\*(C`d_static_inline\*(C'\fR, \f(CW\*(C`d_statvfs\*(C'\fR, +\&\f(CW\*(C`d_stdio_cnt_lval\*(C'\fR, \f(CW\*(C`d_stdio_ptr_lval\*(C'\fR, \f(CW\*(C`d_stdio_ptr_lval_nochange_cnt\*(C'\fR, +\&\f(CW\*(C`d_stdio_ptr_lval_sets_cnt\*(C'\fR, \f(CW\*(C`d_stdio_stream_array\*(C'\fR, \f(CW\*(C`d_stdiobase\*(C'\fR, +\&\f(CW\*(C`d_stdstdio\*(C'\fR, \f(CW\*(C`d_strcoll\*(C'\fR, \f(CW\*(C`d_strerror_l\*(C'\fR, \f(CW\*(C`d_strerror_r\*(C'\fR, +\&\f(CW\*(C`d_strftime\*(C'\fR, \f(CW\*(C`d_strlcat\*(C'\fR, \f(CW\*(C`d_strlcpy\*(C'\fR, \f(CW\*(C`d_strnlen\*(C'\fR, \f(CW\*(C`d_strtod\*(C'\fR, +\&\f(CW\*(C`d_strtod_l\*(C'\fR, \f(CW\*(C`d_strtol\*(C'\fR, \f(CW\*(C`d_strtold\*(C'\fR, \f(CW\*(C`d_strtold_l\*(C'\fR, \f(CW\*(C`d_strtoll\*(C'\fR, +\&\f(CW\*(C`d_strtoq\*(C'\fR, \f(CW\*(C`d_strtoul\*(C'\fR, \f(CW\*(C`d_strtoull\*(C'\fR, \f(CW\*(C`d_strtouq\*(C'\fR, \f(CW\*(C`d_strxfrm\*(C'\fR, +\&\f(CW\*(C`d_strxfrm_l\*(C'\fR, \f(CW\*(C`d_suidsafe\*(C'\fR, \f(CW\*(C`d_symlink\*(C'\fR, \f(CW\*(C`d_syscall\*(C'\fR, +\&\f(CW\*(C`d_syscallproto\*(C'\fR, \f(CW\*(C`d_sysconf\*(C'\fR, \f(CW\*(C`d_sysernlst\*(C'\fR, \f(CW\*(C`d_syserrlst\*(C'\fR, +\&\f(CW\*(C`d_system\*(C'\fR, \f(CW\*(C`d_tcgetpgrp\*(C'\fR, \f(CW\*(C`d_tcsetpgrp\*(C'\fR, \f(CW\*(C`d_telldir\*(C'\fR, +\&\f(CW\*(C`d_telldirproto\*(C'\fR, \f(CW\*(C`d_tgamma\*(C'\fR, \f(CW\*(C`d_thread_local\*(C'\fR, +\&\f(CW\*(C`d_thread_safe_nl_langinfo_l\*(C'\fR, \f(CW\*(C`d_time\*(C'\fR, \f(CW\*(C`d_timegm\*(C'\fR, \f(CW\*(C`d_times\*(C'\fR, +\&\f(CW\*(C`d_tm_tm_gmtoff\*(C'\fR, \f(CW\*(C`d_tm_tm_zone\*(C'\fR, \f(CW\*(C`d_tmpnam_r\*(C'\fR, \f(CW\*(C`d_towlower\*(C'\fR, +\&\f(CW\*(C`d_towupper\*(C'\fR, \f(CW\*(C`d_trunc\*(C'\fR, \f(CW\*(C`d_truncate\*(C'\fR, \f(CW\*(C`d_truncl\*(C'\fR, \f(CW\*(C`d_ttyname_r\*(C'\fR, +\&\f(CW\*(C`d_tzname\*(C'\fR, \f(CW\*(C`d_u32align\*(C'\fR, \f(CW\*(C`d_ualarm\*(C'\fR, \f(CW\*(C`d_umask\*(C'\fR, \f(CW\*(C`d_uname\*(C'\fR, +\&\f(CW\*(C`d_union_semun\*(C'\fR, \f(CW\*(C`d_unlinkat\*(C'\fR, \f(CW\*(C`d_unordered\*(C'\fR, \f(CW\*(C`d_unsetenv\*(C'\fR, +\&\f(CW\*(C`d_uselocale\*(C'\fR, \f(CW\*(C`d_usleep\*(C'\fR, \f(CW\*(C`d_usleepproto\*(C'\fR, \f(CW\*(C`d_ustat\*(C'\fR, \f(CW\*(C`d_vendorarch\*(C'\fR, +\&\f(CW\*(C`d_vendorbin\*(C'\fR, \f(CW\*(C`d_vendorlib\*(C'\fR, \f(CW\*(C`d_vendorscript\*(C'\fR, \f(CW\*(C`d_vfork\*(C'\fR, +\&\f(CW\*(C`d_void_closedir\*(C'\fR, \f(CW\*(C`d_voidsig\*(C'\fR, \f(CW\*(C`d_voidtty\*(C'\fR, \f(CW\*(C`d_vsnprintf\*(C'\fR, \f(CW\*(C`d_wait4\*(C'\fR, +\&\f(CW\*(C`d_waitpid\*(C'\fR, \f(CW\*(C`d_wcrtomb\*(C'\fR, \f(CW\*(C`d_wcscmp\*(C'\fR, \f(CW\*(C`d_wcstombs\*(C'\fR, \f(CW\*(C`d_wcsxfrm\*(C'\fR, +\&\f(CW\*(C`d_wctomb\*(C'\fR, \f(CW\*(C`d_writev\*(C'\fR, \f(CW\*(C`d_xenix\*(C'\fR, \f(CW\*(C`date\*(C'\fR, \f(CW\*(C`db_hashtype\*(C'\fR, +\&\f(CW\*(C`db_prefixtype\*(C'\fR, \f(CW\*(C`db_version_major\*(C'\fR, \f(CW\*(C`db_version_minor\*(C'\fR, +\&\f(CW\*(C`db_version_patch\*(C'\fR, \f(CW\*(C`default_inc_excludes_dot\*(C'\fR, \f(CW\*(C`direntrytype\*(C'\fR, +\&\f(CW\*(C`dlext\*(C'\fR, \f(CW\*(C`dlsrc\*(C'\fR, \f(CW\*(C`doubleinfbytes\*(C'\fR, \f(CW\*(C`doublekind\*(C'\fR, \f(CW\*(C`doublemantbits\*(C'\fR, +\&\f(CW\*(C`doublenanbytes\*(C'\fR, \f(CW\*(C`doublesize\*(C'\fR, \f(CW\*(C`drand01\*(C'\fR, \f(CW\*(C`drand48_r_proto\*(C'\fR, +\&\f(CW\*(C`dtrace\*(C'\fR, \f(CW\*(C`dtraceobject\*(C'\fR, \f(CW\*(C`dtracexnolibs\*(C'\fR, \f(CW\*(C`dynamic_ext\*(C'\fR +.IP e 4 +.IX Item "e" +\&\f(CW\*(C`eagain\*(C'\fR, \f(CW\*(C`ebcdic\*(C'\fR, \f(CW\*(C`echo\*(C'\fR, \f(CW\*(C`egrep\*(C'\fR, \f(CW\*(C`emacs\*(C'\fR, \f(CW\*(C`endgrent_r_proto\*(C'\fR, +\&\f(CW\*(C`endhostent_r_proto\*(C'\fR, \f(CW\*(C`endnetent_r_proto\*(C'\fR, \f(CW\*(C`endprotoent_r_proto\*(C'\fR, +\&\f(CW\*(C`endpwent_r_proto\*(C'\fR, \f(CW\*(C`endservent_r_proto\*(C'\fR, \f(CW\*(C`eunicefix\*(C'\fR, \f(CW\*(C`exe_ext\*(C'\fR, +\&\f(CW\*(C`expr\*(C'\fR, \f(CW\*(C`extensions\*(C'\fR, \f(CW\*(C`extern_C\*(C'\fR, \f(CW\*(C`extras\*(C'\fR +.IP f 4 +.IX Item "f" +\&\f(CW\*(C`fflushNULL\*(C'\fR, \f(CW\*(C`fflushall\*(C'\fR, \f(CW\*(C`find\*(C'\fR, \f(CW\*(C`firstmakefile\*(C'\fR, \f(CW\*(C`flex\*(C'\fR, +\&\f(CW\*(C`fpossize\*(C'\fR, \f(CW\*(C`fpostype\*(C'\fR, \f(CW\*(C`freetype\*(C'\fR, \f(CW\*(C`from\*(C'\fR, \f(CW\*(C`full_ar\*(C'\fR, \f(CW\*(C`full_csh\*(C'\fR, +\&\f(CW\*(C`full_sed\*(C'\fR +.IP g 4 +.IX Item "g" +\&\f(CW\*(C`gccansipedantic\*(C'\fR, \f(CW\*(C`gccosandvers\*(C'\fR, \f(CW\*(C`gccversion\*(C'\fR, \f(CW\*(C`getgrent_r_proto\*(C'\fR, +\&\f(CW\*(C`getgrgid_r_proto\*(C'\fR, \f(CW\*(C`getgrnam_r_proto\*(C'\fR, \f(CW\*(C`gethostbyaddr_r_proto\*(C'\fR, +\&\f(CW\*(C`gethostbyname_r_proto\*(C'\fR, \f(CW\*(C`gethostent_r_proto\*(C'\fR, \f(CW\*(C`getlogin_r_proto\*(C'\fR, +\&\f(CW\*(C`getnetbyaddr_r_proto\*(C'\fR, \f(CW\*(C`getnetbyname_r_proto\*(C'\fR, \f(CW\*(C`getnetent_r_proto\*(C'\fR, +\&\f(CW\*(C`getprotobyname_r_proto\*(C'\fR, \f(CW\*(C`getprotobynumber_r_proto\*(C'\fR, +\&\f(CW\*(C`getprotoent_r_proto\*(C'\fR, \f(CW\*(C`getpwent_r_proto\*(C'\fR, \f(CW\*(C`getpwnam_r_proto\*(C'\fR, +\&\f(CW\*(C`getpwuid_r_proto\*(C'\fR, \f(CW\*(C`getservbyname_r_proto\*(C'\fR, \f(CW\*(C`getservbyport_r_proto\*(C'\fR, +\&\f(CW\*(C`getservent_r_proto\*(C'\fR, \f(CW\*(C`getspnam_r_proto\*(C'\fR, \f(CW\*(C`gidformat\*(C'\fR, \f(CW\*(C`gidsign\*(C'\fR, +\&\f(CW\*(C`gidsize\*(C'\fR, \f(CW\*(C`gidtype\*(C'\fR, \f(CW\*(C`glibpth\*(C'\fR, \f(CW\*(C`gmake\*(C'\fR, \f(CW\*(C`gmtime_r_proto\*(C'\fR, +\&\f(CW\*(C`gnulibc_version\*(C'\fR, \f(CW\*(C`grep\*(C'\fR, \f(CW\*(C`groupcat\*(C'\fR, \f(CW\*(C`groupstype\*(C'\fR, \f(CW\*(C`gzip\*(C'\fR +.IP h 4 +.IX Item "h" +\&\f(CW\*(C`h_fcntl\*(C'\fR, \f(CW\*(C`h_sysfile\*(C'\fR, \f(CW\*(C`hint\*(C'\fR, \f(CW\*(C`hostcat\*(C'\fR, \f(CW\*(C`hostgenerate\*(C'\fR, +\&\f(CW\*(C`hostosname\*(C'\fR, \f(CW\*(C`hostperl\*(C'\fR, \f(CW\*(C`html1dir\*(C'\fR, \f(CW\*(C`html1direxp\*(C'\fR, \f(CW\*(C`html3dir\*(C'\fR, +\&\f(CW\*(C`html3direxp\*(C'\fR +.IP i 4 +.IX Item "i" +\&\f(CW\*(C`i16size\*(C'\fR, \f(CW\*(C`i16type\*(C'\fR, \f(CW\*(C`i32dformat\*(C'\fR, \f(CW\*(C`i32size\*(C'\fR, \f(CW\*(C`i32type\*(C'\fR, \f(CW\*(C`i64size\*(C'\fR, +\&\f(CW\*(C`i64type\*(C'\fR, \f(CW\*(C`i8size\*(C'\fR, \f(CW\*(C`i8type\*(C'\fR, \f(CW\*(C`i_arpainet\*(C'\fR, \f(CW\*(C`i_bfd\*(C'\fR, \f(CW\*(C`i_bsdioctl\*(C'\fR, +\&\f(CW\*(C`i_crypt\*(C'\fR, \f(CW\*(C`i_db\*(C'\fR, \f(CW\*(C`i_dbm\*(C'\fR, \f(CW\*(C`i_dirent\*(C'\fR, \f(CW\*(C`i_dlfcn\*(C'\fR, \f(CW\*(C`i_execinfo\*(C'\fR, +\&\f(CW\*(C`i_fcntl\*(C'\fR, \f(CW\*(C`i_fenv\*(C'\fR, \f(CW\*(C`i_fp\*(C'\fR, \f(CW\*(C`i_fp_class\*(C'\fR, \f(CW\*(C`i_gdbm\*(C'\fR, \f(CW\*(C`i_gdbm_ndbm\*(C'\fR, +\&\f(CW\*(C`i_gdbmndbm\*(C'\fR, \f(CW\*(C`i_grp\*(C'\fR, \f(CW\*(C`i_ieeefp\*(C'\fR, \f(CW\*(C`i_inttypes\*(C'\fR, \f(CW\*(C`i_langinfo\*(C'\fR, +\&\f(CW\*(C`i_libutil\*(C'\fR, \f(CW\*(C`i_locale\*(C'\fR, \f(CW\*(C`i_machcthr\*(C'\fR, \f(CW\*(C`i_malloc\*(C'\fR, \f(CW\*(C`i_mallocmalloc\*(C'\fR, +\&\f(CW\*(C`i_mntent\*(C'\fR, \f(CW\*(C`i_ndbm\*(C'\fR, \f(CW\*(C`i_netdb\*(C'\fR, \f(CW\*(C`i_neterrno\*(C'\fR, \f(CW\*(C`i_netinettcp\*(C'\fR, +\&\f(CW\*(C`i_niin\*(C'\fR, \f(CW\*(C`i_poll\*(C'\fR, \f(CW\*(C`i_prot\*(C'\fR, \f(CW\*(C`i_pthread\*(C'\fR, \f(CW\*(C`i_pwd\*(C'\fR, \f(CW\*(C`i_quadmath\*(C'\fR, +\&\f(CW\*(C`i_rpcsvcdbm\*(C'\fR, \f(CW\*(C`i_sgtty\*(C'\fR, \f(CW\*(C`i_shadow\*(C'\fR, \f(CW\*(C`i_socks\*(C'\fR, \f(CW\*(C`i_stdbool\*(C'\fR, +\&\f(CW\*(C`i_stdint\*(C'\fR, \f(CW\*(C`i_stdlib\*(C'\fR, \f(CW\*(C`i_sunmath\*(C'\fR, \f(CW\*(C`i_sysaccess\*(C'\fR, \f(CW\*(C`i_sysdir\*(C'\fR, +\&\f(CW\*(C`i_sysfile\*(C'\fR, \f(CW\*(C`i_sysfilio\*(C'\fR, \f(CW\*(C`i_sysin\*(C'\fR, \f(CW\*(C`i_sysioctl\*(C'\fR, \f(CW\*(C`i_syslog\*(C'\fR, +\&\f(CW\*(C`i_sysmman\*(C'\fR, \f(CW\*(C`i_sysmode\*(C'\fR, \f(CW\*(C`i_sysmount\*(C'\fR, \f(CW\*(C`i_sysndir\*(C'\fR, \f(CW\*(C`i_sysparam\*(C'\fR, +\&\f(CW\*(C`i_syspoll\*(C'\fR, \f(CW\*(C`i_sysresrc\*(C'\fR, \f(CW\*(C`i_syssecrt\*(C'\fR, \f(CW\*(C`i_sysselct\*(C'\fR, \f(CW\*(C`i_syssockio\*(C'\fR, +\&\f(CW\*(C`i_sysstat\*(C'\fR, \f(CW\*(C`i_sysstatfs\*(C'\fR, \f(CW\*(C`i_sysstatvfs\*(C'\fR, \f(CW\*(C`i_syssyscall\*(C'\fR, +\&\f(CW\*(C`i_systime\*(C'\fR, \f(CW\*(C`i_systimek\*(C'\fR, \f(CW\*(C`i_systimes\*(C'\fR, \f(CW\*(C`i_systypes\*(C'\fR, \f(CW\*(C`i_sysuio\*(C'\fR, +\&\f(CW\*(C`i_sysun\*(C'\fR, \f(CW\*(C`i_sysutsname\*(C'\fR, \f(CW\*(C`i_sysvfs\*(C'\fR, \f(CW\*(C`i_syswait\*(C'\fR, \f(CW\*(C`i_termio\*(C'\fR, +\&\f(CW\*(C`i_termios\*(C'\fR, \f(CW\*(C`i_time\*(C'\fR, \f(CW\*(C`i_unistd\*(C'\fR, \f(CW\*(C`i_ustat\*(C'\fR, \f(CW\*(C`i_utime\*(C'\fR, \f(CW\*(C`i_vfork\*(C'\fR, +\&\f(CW\*(C`i_wchar\*(C'\fR, \f(CW\*(C`i_wctype\*(C'\fR, \f(CW\*(C`i_xlocale\*(C'\fR, \f(CW\*(C`ignore_versioned_solibs\*(C'\fR, +\&\f(CW\*(C`inc_version_list\*(C'\fR, \f(CW\*(C`inc_version_list_init\*(C'\fR, \f(CW\*(C`incpath\*(C'\fR, \f(CW\*(C`incpth\*(C'\fR, +\&\f(CW\*(C`inews\*(C'\fR, \f(CW\*(C`initialinstalllocation\*(C'\fR, \f(CW\*(C`installarchlib\*(C'\fR, \f(CW\*(C`installbin\*(C'\fR, +\&\f(CW\*(C`installhtml1dir\*(C'\fR, \f(CW\*(C`installhtml3dir\*(C'\fR, \f(CW\*(C`installman1dir\*(C'\fR, +\&\f(CW\*(C`installman3dir\*(C'\fR, \f(CW\*(C`installprefix\*(C'\fR, \f(CW\*(C`installprefixexp\*(C'\fR, +\&\f(CW\*(C`installprivlib\*(C'\fR, \f(CW\*(C`installscript\*(C'\fR, \f(CW\*(C`installsitearch\*(C'\fR, \f(CW\*(C`installsitebin\*(C'\fR, +\&\f(CW\*(C`installsitehtml1dir\*(C'\fR, \f(CW\*(C`installsitehtml3dir\*(C'\fR, \f(CW\*(C`installsitelib\*(C'\fR, +\&\f(CW\*(C`installsiteman1dir\*(C'\fR, \f(CW\*(C`installsiteman3dir\*(C'\fR, \f(CW\*(C`installsitescript\*(C'\fR, +\&\f(CW\*(C`installstyle\*(C'\fR, \f(CW\*(C`installusrbinperl\*(C'\fR, \f(CW\*(C`installvendorarch\*(C'\fR, +\&\f(CW\*(C`installvendorbin\*(C'\fR, \f(CW\*(C`installvendorhtml1dir\*(C'\fR, \f(CW\*(C`installvendorhtml3dir\*(C'\fR, +\&\f(CW\*(C`installvendorlib\*(C'\fR, \f(CW\*(C`installvendorman1dir\*(C'\fR, \f(CW\*(C`installvendorman3dir\*(C'\fR, +\&\f(CW\*(C`installvendorscript\*(C'\fR, \f(CW\*(C`intsize\*(C'\fR, \f(CW\*(C`issymlink\*(C'\fR, \f(CW\*(C`ivdformat\*(C'\fR, \f(CW\*(C`ivsize\*(C'\fR, +\&\f(CW\*(C`ivtype\*(C'\fR +.IP k 4 +.IX Item "k" +\&\f(CW\*(C`known_extensions\*(C'\fR, \f(CW\*(C`ksh\*(C'\fR +.IP l 4 +.IX Item "l" +\&\f(CW\*(C`ld\*(C'\fR, \f(CW\*(C`ld_can_script\*(C'\fR, \f(CW\*(C`lddlflags\*(C'\fR, \f(CW\*(C`ldflags\*(C'\fR, +\&\f(CW\*(C`ldflags_uselargefiles\*(C'\fR, \f(CW\*(C`ldlibpthname\*(C'\fR, \f(CW\*(C`less\*(C'\fR, \f(CW\*(C`lib_ext\*(C'\fR, \f(CW\*(C`libc\*(C'\fR, +\&\f(CW\*(C`libperl\*(C'\fR, \f(CW\*(C`libpth\*(C'\fR, \f(CW\*(C`libs\*(C'\fR, \f(CW\*(C`libsdirs\*(C'\fR, \f(CW\*(C`libsfiles\*(C'\fR, \f(CW\*(C`libsfound\*(C'\fR, +\&\f(CW\*(C`libspath\*(C'\fR, \f(CW\*(C`libswanted\*(C'\fR, \f(CW\*(C`libswanted_uselargefiles\*(C'\fR, \f(CW\*(C`line\*(C'\fR, \f(CW\*(C`lint\*(C'\fR, +\&\f(CW\*(C`lkflags\*(C'\fR, \f(CW\*(C`ln\*(C'\fR, \f(CW\*(C`lns\*(C'\fR, \f(CW\*(C`localtime_r_proto\*(C'\fR, \f(CW\*(C`locincpth\*(C'\fR, +\&\f(CW\*(C`loclibpth\*(C'\fR, \f(CW\*(C`longdblinfbytes\*(C'\fR, \f(CW\*(C`longdblkind\*(C'\fR, \f(CW\*(C`longdblmantbits\*(C'\fR, +\&\f(CW\*(C`longdblnanbytes\*(C'\fR, \f(CW\*(C`longdblsize\*(C'\fR, \f(CW\*(C`longlongsize\*(C'\fR, \f(CW\*(C`longsize\*(C'\fR, \f(CW\*(C`lp\*(C'\fR, +\&\f(CW\*(C`lpr\*(C'\fR, \f(CW\*(C`ls\*(C'\fR, \f(CW\*(C`lseeksize\*(C'\fR, \f(CW\*(C`lseektype\*(C'\fR +.IP m 4 +.IX Item "m" +\&\f(CW\*(C`mail\*(C'\fR, \f(CW\*(C`mailx\*(C'\fR, \f(CW\*(C`make\*(C'\fR, \f(CW\*(C`make_set_make\*(C'\fR, \f(CW\*(C`mallocobj\*(C'\fR, \f(CW\*(C`mallocsrc\*(C'\fR, +\&\f(CW\*(C`malloctype\*(C'\fR, \f(CW\*(C`man1dir\*(C'\fR, \f(CW\*(C`man1direxp\*(C'\fR, \f(CW\*(C`man1ext\*(C'\fR, \f(CW\*(C`man3dir\*(C'\fR, +\&\f(CW\*(C`man3direxp\*(C'\fR, \f(CW\*(C`man3ext\*(C'\fR, \f(CW\*(C`mips_type\*(C'\fR, \f(CW\*(C`mistrustnm\*(C'\fR, \f(CW\*(C`mkdir\*(C'\fR, +\&\f(CW\*(C`mmaptype\*(C'\fR, \f(CW\*(C`modetype\*(C'\fR, \f(CW\*(C`more\*(C'\fR, \f(CW\*(C`multiarch\*(C'\fR, \f(CW\*(C`mv\*(C'\fR, \f(CW\*(C`myarchname\*(C'\fR, +\&\f(CW\*(C`mydomain\*(C'\fR, \f(CW\*(C`myhostname\*(C'\fR, \f(CW\*(C`myuname\*(C'\fR +.IP n 4 +.IX Item "n" +\&\f(CW\*(C`n\*(C'\fR, \f(CW\*(C`need_va_copy\*(C'\fR, \f(CW\*(C`netdb_hlen_type\*(C'\fR, \f(CW\*(C`netdb_host_type\*(C'\fR, +\&\f(CW\*(C`netdb_name_type\*(C'\fR, \f(CW\*(C`netdb_net_type\*(C'\fR, \f(CW\*(C`nm\*(C'\fR, \f(CW\*(C`nm_opt\*(C'\fR, \f(CW\*(C`nm_so_opt\*(C'\fR, +\&\f(CW\*(C`nonxs_ext\*(C'\fR, \f(CW\*(C`nroff\*(C'\fR, \f(CW\*(C`nvEUformat\*(C'\fR, \f(CW\*(C`nvFUformat\*(C'\fR, \f(CW\*(C`nvGUformat\*(C'\fR, +\&\f(CW\*(C`nv_overflows_integers_at\*(C'\fR, \f(CW\*(C`nv_preserves_uv_bits\*(C'\fR, \f(CW\*(C`nveformat\*(C'\fR, +\&\f(CW\*(C`nvfformat\*(C'\fR, \f(CW\*(C`nvgformat\*(C'\fR, \f(CW\*(C`nvmantbits\*(C'\fR, \f(CW\*(C`nvsize\*(C'\fR, \f(CW\*(C`nvtype\*(C'\fR +.IP o 4 +.IX Item "o" +\&\f(CW\*(C`o_nonblock\*(C'\fR, \f(CW\*(C`obj_ext\*(C'\fR, \f(CW\*(C`old_pthread_create_joinable\*(C'\fR, \f(CW\*(C`optimize\*(C'\fR, +\&\f(CW\*(C`orderlib\*(C'\fR, \f(CW\*(C`osname\*(C'\fR, \f(CW\*(C`osvers\*(C'\fR, \f(CW\*(C`otherlibdirs\*(C'\fR +.IP p 4 +.IX Item "p" +\&\f(CW\*(C`package\*(C'\fR, \f(CW\*(C`pager\*(C'\fR, \f(CW\*(C`passcat\*(C'\fR, \f(CW\*(C`patchlevel\*(C'\fR, \f(CW\*(C`path_sep\*(C'\fR, \f(CW\*(C`perl\*(C'\fR, +\&\f(CW\*(C`perl5\*(C'\fR, \f(CW\*(C`perl_patchlevel\*(C'\fR, \f(CW\*(C`perl_static_inline\*(C'\fR, \f(CW\*(C`perl_thread_local\*(C'\fR, +\&\f(CW\*(C`perladmin\*(C'\fR, \f(CW\*(C`perllibs\*(C'\fR, \f(CW\*(C`perlpath\*(C'\fR, \f(CW\*(C`pg\*(C'\fR, \f(CW\*(C`phostname\*(C'\fR, \f(CW\*(C`pidtype\*(C'\fR, +\&\f(CW\*(C`plibpth\*(C'\fR, \f(CW\*(C`pmake\*(C'\fR, \f(CW\*(C`pr\*(C'\fR, \f(CW\*(C`prefix\*(C'\fR, \f(CW\*(C`prefixexp\*(C'\fR, \f(CW\*(C`privlib\*(C'\fR, +\&\f(CW\*(C`privlibexp\*(C'\fR, \f(CW\*(C`procselfexe\*(C'\fR, \f(CW\*(C`ptrsize\*(C'\fR +.IP q 4 +.IX Item "q" +\&\f(CW\*(C`quadkind\*(C'\fR, \f(CW\*(C`quadtype\*(C'\fR +.IP r 4 +.IX Item "r" +\&\f(CW\*(C`randbits\*(C'\fR, \f(CW\*(C`randfunc\*(C'\fR, \f(CW\*(C`random_r_proto\*(C'\fR, \f(CW\*(C`randseedtype\*(C'\fR, \f(CW\*(C`ranlib\*(C'\fR, +\&\f(CW\*(C`rd_nodata\*(C'\fR, \f(CW\*(C`readdir64_r_proto\*(C'\fR, \f(CW\*(C`readdir_r_proto\*(C'\fR, \f(CW\*(C`revision\*(C'\fR, \f(CW\*(C`rm\*(C'\fR, +\&\f(CW\*(C`rm_try\*(C'\fR, \f(CW\*(C`rmail\*(C'\fR, \f(CW\*(C`run\*(C'\fR, \f(CW\*(C`runnm\*(C'\fR +.IP s 4 +.IX Item "s" +\&\f(CW\*(C`sGMTIME_max\*(C'\fR, \f(CW\*(C`sGMTIME_min\*(C'\fR, \f(CW\*(C`sLOCALTIME_max\*(C'\fR, \f(CW\*(C`sLOCALTIME_min\*(C'\fR, +\&\f(CW\*(C`sPRIEUldbl\*(C'\fR, \f(CW\*(C`sPRIFUldbl\*(C'\fR, \f(CW\*(C`sPRIGUldbl\*(C'\fR, \f(CW\*(C`sPRIXU64\*(C'\fR, \f(CW\*(C`sPRId64\*(C'\fR, +\&\f(CW\*(C`sPRIeldbl\*(C'\fR, \f(CW\*(C`sPRIfldbl\*(C'\fR, \f(CW\*(C`sPRIgldbl\*(C'\fR, \f(CW\*(C`sPRIi64\*(C'\fR, \f(CW\*(C`sPRIo64\*(C'\fR, +\&\f(CW\*(C`sPRIu64\*(C'\fR, \f(CW\*(C`sPRIx64\*(C'\fR, \f(CW\*(C`sSCNfldbl\*(C'\fR, \f(CW\*(C`sched_yield\*(C'\fR, \f(CW\*(C`scriptdir\*(C'\fR, +\&\f(CW\*(C`scriptdirexp\*(C'\fR, \f(CW\*(C`sed\*(C'\fR, \f(CW\*(C`seedfunc\*(C'\fR, \f(CW\*(C`selectminbits\*(C'\fR, \f(CW\*(C`selecttype\*(C'\fR, +\&\f(CW\*(C`sendmail\*(C'\fR, \f(CW\*(C`setgrent_r_proto\*(C'\fR, \f(CW\*(C`sethostent_r_proto\*(C'\fR, +\&\f(CW\*(C`setlocale_r_proto\*(C'\fR, \f(CW\*(C`setnetent_r_proto\*(C'\fR, \f(CW\*(C`setprotoent_r_proto\*(C'\fR, +\&\f(CW\*(C`setpwent_r_proto\*(C'\fR, \f(CW\*(C`setservent_r_proto\*(C'\fR, \f(CW\*(C`sh\*(C'\fR, \f(CW\*(C`shar\*(C'\fR, \f(CW\*(C`sharpbang\*(C'\fR, +\&\f(CW\*(C`shmattype\*(C'\fR, \f(CW\*(C`shortsize\*(C'\fR, \f(CW\*(C`shrpenv\*(C'\fR, \f(CW\*(C`shsharp\*(C'\fR, \f(CW\*(C`sig_count\*(C'\fR, +\&\f(CW\*(C`sig_name\*(C'\fR, \f(CW\*(C`sig_name_init\*(C'\fR, \f(CW\*(C`sig_num\*(C'\fR, \f(CW\*(C`sig_num_init\*(C'\fR, \f(CW\*(C`sig_size\*(C'\fR, +\&\f(CW\*(C`signal_t\*(C'\fR, \f(CW\*(C`sitearch\*(C'\fR, \f(CW\*(C`sitearchexp\*(C'\fR, \f(CW\*(C`sitebin\*(C'\fR, \f(CW\*(C`sitebinexp\*(C'\fR, +\&\f(CW\*(C`sitehtml1dir\*(C'\fR, \f(CW\*(C`sitehtml1direxp\*(C'\fR, \f(CW\*(C`sitehtml3dir\*(C'\fR, \f(CW\*(C`sitehtml3direxp\*(C'\fR, +\&\f(CW\*(C`sitelib\*(C'\fR, \f(CW\*(C`sitelib_stem\*(C'\fR, \f(CW\*(C`sitelibexp\*(C'\fR, \f(CW\*(C`siteman1dir\*(C'\fR, +\&\f(CW\*(C`siteman1direxp\*(C'\fR, \f(CW\*(C`siteman3dir\*(C'\fR, \f(CW\*(C`siteman3direxp\*(C'\fR, \f(CW\*(C`siteprefix\*(C'\fR, +\&\f(CW\*(C`siteprefixexp\*(C'\fR, \f(CW\*(C`sitescript\*(C'\fR, \f(CW\*(C`sitescriptexp\*(C'\fR, \f(CW\*(C`sizesize\*(C'\fR, +\&\f(CW\*(C`sizetype\*(C'\fR, \f(CW\*(C`sleep\*(C'\fR, \f(CW\*(C`smail\*(C'\fR, \f(CW\*(C`so\*(C'\fR, \f(CW\*(C`sockethdr\*(C'\fR, \f(CW\*(C`socketlib\*(C'\fR, +\&\f(CW\*(C`socksizetype\*(C'\fR, \f(CW\*(C`sort\*(C'\fR, \f(CW\*(C`spackage\*(C'\fR, \f(CW\*(C`spitshell\*(C'\fR, \f(CW\*(C`srand48_r_proto\*(C'\fR, +\&\f(CW\*(C`srandom_r_proto\*(C'\fR, \f(CW\*(C`src\*(C'\fR, \f(CW\*(C`ssizetype\*(C'\fR, \f(CW\*(C`st_dev_sign\*(C'\fR, \f(CW\*(C`st_dev_size\*(C'\fR, +\&\f(CW\*(C`st_ino_sign\*(C'\fR, \f(CW\*(C`st_ino_size\*(C'\fR, \f(CW\*(C`startperl\*(C'\fR, \f(CW\*(C`startsh\*(C'\fR, \f(CW\*(C`static_ext\*(C'\fR, +\&\f(CW\*(C`stdchar\*(C'\fR, \f(CW\*(C`stdio_base\*(C'\fR, \f(CW\*(C`stdio_bufsiz\*(C'\fR, \f(CW\*(C`stdio_cnt\*(C'\fR, \f(CW\*(C`stdio_filbuf\*(C'\fR, +\&\f(CW\*(C`stdio_ptr\*(C'\fR, \f(CW\*(C`stdio_stream_array\*(C'\fR, \f(CW\*(C`strerror_r_proto\*(C'\fR, \f(CW\*(C`submit\*(C'\fR, +\&\f(CW\*(C`subversion\*(C'\fR, \f(CW\*(C`sysman\*(C'\fR, \f(CW\*(C`sysroot\*(C'\fR +.IP t 4 +.IX Item "t" +\&\f(CW\*(C`tail\*(C'\fR, \f(CW\*(C`taint_disabled\*(C'\fR, \f(CW\*(C`taint_support\*(C'\fR, \f(CW\*(C`tar\*(C'\fR, \f(CW\*(C`targetarch\*(C'\fR, +\&\f(CW\*(C`targetdir\*(C'\fR, \f(CW\*(C`targetenv\*(C'\fR, \f(CW\*(C`targethost\*(C'\fR, \f(CW\*(C`targetmkdir\*(C'\fR, \f(CW\*(C`targetport\*(C'\fR, +\&\f(CW\*(C`targetsh\*(C'\fR, \f(CW\*(C`tbl\*(C'\fR, \f(CW\*(C`tee\*(C'\fR, \f(CW\*(C`test\*(C'\fR, \f(CW\*(C`timeincl\*(C'\fR, \f(CW\*(C`timetype\*(C'\fR, +\&\f(CW\*(C`tmpnam_r_proto\*(C'\fR, \f(CW\*(C`to\*(C'\fR, \f(CW\*(C`touch\*(C'\fR, \f(CW\*(C`tr\*(C'\fR, \f(CW\*(C`trnl\*(C'\fR, \f(CW\*(C`troff\*(C'\fR, +\&\f(CW\*(C`ttyname_r_proto\*(C'\fR +.IP u 4 +.IX Item "u" +\&\f(CW\*(C`u16size\*(C'\fR, \f(CW\*(C`u16type\*(C'\fR, \f(CW\*(C`u32XUformat\*(C'\fR, \f(CW\*(C`u32oformat\*(C'\fR, \f(CW\*(C`u32size\*(C'\fR, +\&\f(CW\*(C`u32type\*(C'\fR, \f(CW\*(C`u32uformat\*(C'\fR, \f(CW\*(C`u32xformat\*(C'\fR, \f(CW\*(C`u64size\*(C'\fR, \f(CW\*(C`u64type\*(C'\fR, +\&\f(CW\*(C`u8size\*(C'\fR, \f(CW\*(C`u8type\*(C'\fR, \f(CW\*(C`uidformat\*(C'\fR, \f(CW\*(C`uidsign\*(C'\fR, \f(CW\*(C`uidsize\*(C'\fR, \f(CW\*(C`uidtype\*(C'\fR, +\&\f(CW\*(C`uname\*(C'\fR, \f(CW\*(C`uniq\*(C'\fR, \f(CW\*(C`uquadtype\*(C'\fR, \f(CW\*(C`use64bitall\*(C'\fR, \f(CW\*(C`use64bitint\*(C'\fR, +\&\f(CW\*(C`usecbacktrace\*(C'\fR, \f(CW\*(C`usecrosscompile\*(C'\fR, \f(CW\*(C`usedefaultstrict\*(C'\fR, \f(CW\*(C`usedevel\*(C'\fR, +\&\f(CW\*(C`usedl\*(C'\fR, \f(CW\*(C`usedtrace\*(C'\fR, \f(CW\*(C`usefaststdio\*(C'\fR, \f(CW\*(C`useithreads\*(C'\fR, +\&\f(CW\*(C`usekernprocpathname\*(C'\fR, \f(CW\*(C`uselanginfo\*(C'\fR, \f(CW\*(C`uselargefiles\*(C'\fR, \f(CW\*(C`uselongdouble\*(C'\fR, +\&\f(CW\*(C`usemallocwrap\*(C'\fR, \f(CW\*(C`usemorebits\*(C'\fR, \f(CW\*(C`usemultiplicity\*(C'\fR, \f(CW\*(C`usemymalloc\*(C'\fR, +\&\f(CW\*(C`usenm\*(C'\fR, \f(CW\*(C`usensgetexecutablepath\*(C'\fR, \f(CW\*(C`useopcode\*(C'\fR, \f(CW\*(C`useperlio\*(C'\fR, +\&\f(CW\*(C`useposix\*(C'\fR, \f(CW\*(C`usequadmath\*(C'\fR, \f(CW\*(C`usereentrant\*(C'\fR, \f(CW\*(C`userelocatableinc\*(C'\fR, +\&\f(CW\*(C`useshrplib\*(C'\fR, \f(CW\*(C`usesitecustomize\*(C'\fR, \f(CW\*(C`usesocks\*(C'\fR, \f(CW\*(C`usethreads\*(C'\fR, +\&\f(CW\*(C`usevendorprefix\*(C'\fR, \f(CW\*(C`useversionedarchname\*(C'\fR, \f(CW\*(C`usevfork\*(C'\fR, \f(CW\*(C`usrinc\*(C'\fR, +\&\f(CW\*(C`uuname\*(C'\fR, \f(CW\*(C`uvXUformat\*(C'\fR, \f(CW\*(C`uvoformat\*(C'\fR, \f(CW\*(C`uvsize\*(C'\fR, \f(CW\*(C`uvtype\*(C'\fR, \f(CW\*(C`uvuformat\*(C'\fR, +\&\f(CW\*(C`uvxformat\*(C'\fR +.IP v 4 +.IX Item "v" +\&\f(CW\*(C`vendorarch\*(C'\fR, \f(CW\*(C`vendorarchexp\*(C'\fR, \f(CW\*(C`vendorbin\*(C'\fR, \f(CW\*(C`vendorbinexp\*(C'\fR, +\&\f(CW\*(C`vendorhtml1dir\*(C'\fR, \f(CW\*(C`vendorhtml1direxp\*(C'\fR, \f(CW\*(C`vendorhtml3dir\*(C'\fR, +\&\f(CW\*(C`vendorhtml3direxp\*(C'\fR, \f(CW\*(C`vendorlib\*(C'\fR, \f(CW\*(C`vendorlib_stem\*(C'\fR, \f(CW\*(C`vendorlibexp\*(C'\fR, +\&\f(CW\*(C`vendorman1dir\*(C'\fR, \f(CW\*(C`vendorman1direxp\*(C'\fR, \f(CW\*(C`vendorman3dir\*(C'\fR, +\&\f(CW\*(C`vendorman3direxp\*(C'\fR, \f(CW\*(C`vendorprefix\*(C'\fR, \f(CW\*(C`vendorprefixexp\*(C'\fR, \f(CW\*(C`vendorscript\*(C'\fR, +\&\f(CW\*(C`vendorscriptexp\*(C'\fR, \f(CW\*(C`version\*(C'\fR, \f(CW\*(C`version_patchlevel_string\*(C'\fR, +\&\f(CW\*(C`versiononly\*(C'\fR, \f(CW\*(C`vi\*(C'\fR +.IP x 4 +.IX Item "x" +\&\f(CW\*(C`xlibpth\*(C'\fR, \f(CW\*(C`xlocale_needed\*(C'\fR +.IP y 4 +.IX Item "y" +\&\f(CW\*(C`yacc\*(C'\fR, \f(CW\*(C`yaccflags\*(C'\fR +.IP z 4 +.IX Item "z" +\&\f(CW\*(C`zcat\*(C'\fR, \f(CW\*(C`zip\*(C'\fR +.IP "GIT DATA" 4 +.IX Item "GIT DATA" +.PD 0 +.IP NOTE 4 +.IX Item "NOTE" +.PD +.SS "Config::Extensions \- hash lookup of which core extensions were built." +.IX Subsection "Config::Extensions - hash lookup of which core extensions were built." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +dynamic, nonxs, static +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "Config::Perl::V \- Structured data retrieval of perl \-V output" +.IX Subsection "Config::Perl::V - Structured data retrieval of perl -V output" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "$conf = myconfig ()" 4 +.el .IP "\f(CW$conf\fR = myconfig ()" 4 +.IX Item "$conf = myconfig ()" +.ie n .IP "$conf = plv2hash ($text [, ...])" 4 +.el .IP "\f(CW$conf\fR = plv2hash ($text [, ...])" 4 +.IX Item "$conf = plv2hash ($text [, ...])" +.ie n .IP "$info = summary ([$conf])" 4 +.el .IP "\f(CW$info\fR = summary ([$conf])" 4 +.IX Item "$info = summary ([$conf])" +.ie n .IP "$md5 = signature ([$conf])" 4 +.el .IP "\f(CW$md5\fR = signature ([$conf])" 4 +.IX Item "$md5 = signature ([$conf])" +.IP "The hash structure" 4 +.IX Item "The hash structure" +.PD +build, osname, stamp, options, derived, patches, environment, config, inc +.RE +.RS 4 +.RE +.IP REASONING 4 +.IX Item "REASONING" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP TODO 4 +.IX Item "TODO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Cwd \- get pathname of current working directory" +.IX Subsection "Cwd - get pathname of current working directory" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "getcwd and friends" 4 +.IX Item "getcwd and friends" +.PD +getcwd, cwd, fastcwd, fastgetcwd, getdcwd +.IP "abs_path and friends" 4 +.IX Item "abs_path and friends" +abs_path, realpath, fast_abs_path +.ie n .IP $ENV{PWD} 4 +.el .IP \f(CW$ENV\fR{PWD} 4 +.IX Item "$ENV{PWD}" +.RE +.RS 4 +.RE +.PD 0 +.IP NOTES 4 +.IX Item "NOTES" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "DB \- programmatic interface to the Perl debugging API" +.IX Subsection "DB - programmatic interface to the Perl debugging API" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Global Variables" 4 +.IX Item "Global Variables" +.PD +.Vb 3 +\& $DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, +\&@DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, +\&$DB::lineno +.Ve +.IP "API Methods" 4 +.IX Item "API Methods" +CLIENT\->\fBregister()\fR, CLIENT\->evalcode(STRING), CLIENT\->skippkg('D::hide'), +CLIENT\->\fBrun()\fR, CLIENT\->\fBstep()\fR, CLIENT\->\fBnext()\fR, CLIENT\->\fBdone()\fR +.IP "Client Callback Methods" 4 +.IX Item "Client Callback Methods" +CLIENT\->\fBinit()\fR, CLIENT\->prestop([STRING]), CLIENT\->\fBstop()\fR, CLIENT\->\fBidle()\fR, +CLIENT\->poststop([STRING]), CLIENT\->evalcode(STRING), CLIENT\->\fBcleanup()\fR, +CLIENT\->output(LIST) +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter \-\- Filter DBM keys/values" +.IX Subsection "DBM_Filter -- Filter DBM keys/values" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "What is a DBM Filter?" 4 +.IX Item "What is a DBM Filter?" +.RS 4 +.IP "So what's new?" 4 +.IX Item "So what's new?" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.ie n .IP "$db\->\fBFilter_Push()\fR / $db\->\fBFilter_Key_Push()\fR / $db\->\fBFilter_Value_Push()\fR" 4 +.el .IP "\f(CW$db\fR\->\fBFilter_Push()\fR / \f(CW$db\fR\->\fBFilter_Key_Push()\fR / \f(CW$db\fR\->\fBFilter_Value_Push()\fR" 4 +.IX Item "$db->Filter_Push() / $db->Filter_Key_Push() / $db->Filter_Value_Push()" +.PD +Filter_Push, Filter_Key_Push, Filter_Value_Push +.ie n .IP $db\->\fBFilter_Pop()\fR 4 +.el .IP \f(CW$db\fR\->\fBFilter_Pop()\fR 4 +.IX Item "$db->Filter_Pop()" +.PD 0 +.ie n .IP $db\->\fBFiltered()\fR 4 +.el .IP \f(CW$db\fR\->\fBFiltered()\fR 4 +.IX Item "$db->Filtered()" +.RE +.RS 4 +.RE +.IP "Writing a Filter" 4 +.IX Item "Writing a Filter" +.RS 4 +.IP "Immediate Filters" 4 +.IX Item "Immediate Filters" +.IP "Canned Filters" 4 +.IX Item "Canned Filters" +.PD +"name", params +.RE +.RS 4 +.RE +.IP "Filters Included" 4 +.IX Item "Filters Included" +utf8, encode, compress, int32, null +.IP NOTES 4 +.IX Item "NOTES" +.RS 4 +.PD 0 +.IP "Maintain Round Trip Integrity" 4 +.IX Item "Maintain Round Trip Integrity" +.IP "Don't mix filtered & non-filtered data in the same database file." 4 +.IX Item "Don't mix filtered & non-filtered data in the same database file." +.RE +.RS 4 +.RE +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter::compress \- filter for DBM_Filter" +.IX Subsection "DBM_Filter::compress - filter for DBM_Filter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter::encode \- filter for DBM_Filter" +.IX Subsection "DBM_Filter::encode - filter for DBM_Filter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter::int32 \- filter for DBM_Filter" +.IX Subsection "DBM_Filter::int32 - filter for DBM_Filter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter::null \- filter for DBM_Filter" +.IX Subsection "DBM_Filter::null - filter for DBM_Filter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DBM_Filter::utf8 \- filter for DBM_Filter" +.IX Subsection "DBM_Filter::utf8 - filter for DBM_Filter" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "DB_File \- Perl5 access to Berkeley DB version 1.x" +.IX Subsection "DB_File - Perl5 access to Berkeley DB version 1.x" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBDB_HASH\fR, \fBDB_BTREE\fR, \fBDB_RECNO\fR +.RS 4 +.IP "Using DB_File with Berkeley DB version 2 or greater" 4 +.IX Item "Using DB_File with Berkeley DB version 2 or greater" +.PD 0 +.IP "Interface to Berkeley DB" 4 +.IX Item "Interface to Berkeley DB" +.IP "Opening a Berkeley DB Database File" 4 +.IX Item "Opening a Berkeley DB Database File" +.IP "Default Parameters" 4 +.IX Item "Default Parameters" +.IP "In Memory Databases" 4 +.IX Item "In Memory Databases" +.RE +.RS 4 +.RE +.IP DB_HASH 4 +.IX Item "DB_HASH" +.RS 4 +.IP "A Simple Example" 4 +.IX Item "A Simple Example" +.RE +.RS 4 +.RE +.IP DB_BTREE 4 +.IX Item "DB_BTREE" +.RS 4 +.IP "Changing the BTREE sort order" 4 +.IX Item "Changing the BTREE sort order" +.IP "Handling Duplicate Keys" 4 +.IX Item "Handling Duplicate Keys" +.IP "The \fBget_dup()\fR Method" 4 +.IX Item "The get_dup() Method" +.IP "The \fBfind_dup()\fR Method" 4 +.IX Item "The find_dup() Method" +.IP "The \fBdel_dup()\fR Method" 4 +.IX Item "The del_dup() Method" +.IP "Matching Partial Keys" 4 +.IX Item "Matching Partial Keys" +.RE +.RS 4 +.RE +.IP DB_RECNO 4 +.IX Item "DB_RECNO" +.RS 4 +.IP "The 'bval' Option" 4 +.IX Item "The 'bval' Option" +.IP "A Simple Example" 4 +.IX Item "A Simple Example" +.IP "Extra RECNO Methods" 4 +.IX Item "Extra RECNO Methods" +.PD +\&\fR\f(CB$X\fR\fB\->push(list) ;\fR, \fB\fR\f(CB$value\fR\fB = \fR\f(CB$X\fR\fB\->pop ;\fR, \fB\fR\f(CB$X\fR\fB\->shift\fR, +\&\fB\fR\f(CB$X\fR\fB\->unshift(list) ;\fR, \fB\fR\f(CB$X\fR\fB\->length\fR, \fB\fR\f(CB$X\fR\fB\->splice(offset, +length, elements);\fR +.IP "Another Example" 4 +.IX Item "Another Example" +.RE +.RS 4 +.RE +.PD 0 +.IP "THE API INTERFACE" 4 +.IX Item "THE API INTERFACE" +.PD +\&\fR\f(CB$status\fR\fB = \fR\f(CB$X\fR\fB\->get($key, \fR\f(CB$value\fR\fB [, \fR\f(CB$flags\fR\fB]) ;\fR, \fB\fR\f(CB$status\fR\fB = +\&\fR\f(CB$X\fR\fB\->put($key, \fR\f(CB$value\fR\fB [, \fR\f(CB$flags\fR\fB]) ;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$X\fR\fB\->del($key [, +\&\fR\f(CB$flags\fR\fB]) ;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$X\fR\fB\->fd ;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$X\fR\fB\->seq($key, +\&\fR\f(CB$value\fR\fB, \fR\f(CB$flags\fR\fB) ;\fR, \fB\fR\f(CB$status\fR\fB = \fR\f(CB$X\fR\fB\->sync([$flags]) ;\fR +.IP "DBM FILTERS" 4 +.IX Item "DBM FILTERS" +.RS 4 +.PD 0 +.IP "DBM Filter Low-level API" 4 +.IX Item "DBM Filter Low-level API" +.PD +\&\fBfilter_store_key\fR, \fBfilter_store_value\fR, \fBfilter_fetch_key\fR, +\&\fBfilter_fetch_value\fR +.IP "The Filter" 4 +.IX Item "The Filter" +.PD 0 +.IP "An Example \-\- the NULL termination problem." 4 +.IX Item "An Example -- the NULL termination problem." +.IP "Another Example \-\- Key is a C int." 4 +.IX Item "Another Example -- Key is a C int." +.RE +.RS 4 +.RE +.IP "HINTS AND TIPS" 4 +.IX Item "HINTS AND TIPS" +.RS 4 +.IP "Locking: The Trouble with fd" 4 +.IX Item "Locking: The Trouble with fd" +.IP "Safe ways to lock a database" 4 +.IX Item "Safe ways to lock a database" +.PD +\&\fBTie::DB_Lock\fR, \fBTie::DB_LockFile\fR, \fBDB_File::Lock\fR +.IP "Sharing Databases With C Applications" 4 +.IX Item "Sharing Databases With C Applications" +.PD 0 +.IP "The \fBuntie()\fR Gotcha" 4 +.IX Item "The untie() Gotcha" +.RE +.RS 4 +.RE +.IP "COMMON QUESTIONS" 4 +.IX Item "COMMON QUESTIONS" +.RS 4 +.IP "Why is there Perl source in my database?" 4 +.IX Item "Why is there Perl source in my database?" +.IP "How do I store complex data structures with DB_File?" 4 +.IX Item "How do I store complex data structures with DB_File?" +.IP "What does ""wide character in subroutine entry"" mean?" 4 +.IX Item "What does ""wide character in subroutine entry"" mean?" +.IP "What does ""Invalid Argument"" mean?" 4 +.IX Item "What does ""Invalid Argument"" mean?" +.IP "What does ""Bareword 'DB_File' not allowed"" mean?" 4 +.IX Item "What does ""Bareword 'DB_File' not allowed"" mean?" +.RE +.RS 4 +.RE +.IP REFERENCES 4 +.IX Item "REFERENCES" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AVAILABILITY 4 +.IX Item "AVAILABILITY" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.ie n .SS "Data::Dumper \- stringified perl data structures, suitable for both printing and ""eval""" +.el .SS "Data::Dumper \- stringified perl data structures, suitable for both printing and \f(CWeval\fP" +.IX Subsection "Data::Dumper - stringified perl data structures, suitable for both printing and eval" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Methods 4 +.IX Item "Methods" +.PD +\&\fIPACKAGE\fR\->new(\fIARRAYREF [\fR, \fIARRAYREF]\fR), \fR\f(CI$OBJ\fR\fI\fR\->Dump \fIor\fR +\&\fIPACKAGE\fR\->Dump(\fIARRAYREF [\fR, \fIARRAYREF]\fR), \fI\fR\f(CI$OBJ\fR\fI\fR\->Seen(\fI[HASHREF]\fR), +\&\fI\fR\f(CI$OBJ\fR\fI\fR\->Values(\fI[ARRAYREF]\fR), \fI\fR\f(CI$OBJ\fR\fI\fR\->Names(\fI[ARRAYREF]\fR), +\&\fI\fR\f(CI$OBJ\fR\fI\fR\->Reset +.IP Functions 4 +.IX Item "Functions" +Dumper(\fILIST\fR) +.IP "Configuration Variables or Methods" 4 +.IX Item "Configuration Variables or Methods" +.PD 0 +.IP Exports 4 +.IX Item "Exports" +.PD +Dumper +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.RS 4 +.IP NOTE 4 +.IX Item "NOTE" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP VERSION 4 +.IX Item "VERSION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Devel::PPPort \- Perl/Pollution/Portability" +.IX Subsection "Devel::PPPort - Perl/Pollution/Portability" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "Start using Devel::PPPort for XS projects" 4 +.IX Item "Start using Devel::PPPort for XS projects" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Why use ppport.h?" 4 +.IX Item "Why use ppport.h?" +.IP "How to use ppport.h" 4 +.IX Item "How to use ppport.h" +.IP "Running ppport.h" 4 +.IX Item "Running ppport.h" +.RE +.RS 4 +.RE +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP WriteFile 4 +.IX Item "WriteFile" +.IP GetFileContents 4 +.IX Item "GetFileContents" +.RE +.RS 4 +.RE +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.RS 4 +.IP "Provided Perl compatibility API" 4 +.IX Item "Provided Perl compatibility API" +.IP "Supported Perl API, sorted by version" 4 +.IX Item "Supported Perl API, sorted by version" +.PD +perl 5.35.9, perl 5.35.8, perl 5.35.7, perl 5.35.6, perl 5.35.5, perl +5.35.4, perl 5.35.1, perl 5.33.8, perl 5.33.7, perl 5.33.5, perl 5.33.2, +perl 5.32.1, perl 5.31.9, perl 5.31.7, perl 5.31.5, perl 5.31.4, perl +5.31.3, perl 5.29.10, perl 5.29.9, perl 5.27.11, perl 5.27.9, perl 5.27.8, +perl 5.27.7, perl 5.27.6, perl 5.27.5, perl 5.27.4, perl 5.27.3, perl +5.27.2, perl 5.27.1, perl 5.25.11, perl 5.25.10, perl 5.25.9, perl 5.25.8, +perl 5.25.7, perl 5.25.6, perl 5.25.5, perl 5.25.4, perl 5.25.3, perl +5.25.2, perl 5.25.1, perl 5.24.0, perl 5.23.9, perl 5.23.8, perl 5.23.6, +perl 5.23.5, perl 5.23.2, perl 5.23.0, perl 5.21.10, perl 5.21.9, perl +5.21.8, perl 5.21.7, perl 5.21.6, perl 5.21.5, perl 5.21.4, perl 5.21.3, +perl 5.21.2, perl 5.21.1, perl 5.19.10, perl 5.19.9, perl 5.19.7, perl +5.19.5, perl 5.19.4, perl 5.19.3, perl 5.19.2, perl 5.19.1, perl 5.18.0, +perl 5.17.11, perl 5.17.8, perl 5.17.7, perl 5.17.6, perl 5.17.5, perl +5.17.4, perl 5.17.2, perl 5.17.1, perl 5.16.0, perl 5.15.8, perl 5.15.7, +perl 5.15.6, perl 5.15.4, perl 5.15.3, perl 5.15.2, perl 5.15.1, perl +5.13.10, perl 5.13.9, perl 5.13.8, perl 5.13.7, perl 5.13.6, perl 5.13.5, +perl 5.13.4, perl 5.13.3, perl 5.13.2, perl 5.13.1, perl 5.13.0, perl +5.11.5, perl 5.11.4, perl 5.11.2, perl 5.11.0, perl 5.10.1, perl 5.10.0, +perl 5.9.5, perl 5.9.4, perl 5.9.3, perl 5.9.2, perl 5.9.1, perl 5.9.0, +perl 5.8.9, perl 5.8.8, perl 5.8.3, perl 5.8.1, perl 5.8.0, perl 5.7.3, +perl 5.7.2, perl 5.7.1, perl 5.7.0, perl 5.6.1, perl 5.6.0, perl 5.005_03, +perl 5.005, perl 5.004_05, perl 5.004, perl 5.003_07 (or maybe earlier), +Backported version unknown +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Devel::Peek \- A data debugging tool for the XS programmer" +.IX Subsection "Devel::Peek - A data debugging tool for the XS programmer" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Runtime debugging" 4 +.IX Item "Runtime debugging" +.IP "Memory footprint debugging" 4 +.IX Item "Memory footprint debugging" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "A simple scalar string" 4 +.IX Item "A simple scalar string" +.IP "A simple scalar number" 4 +.IX Item "A simple scalar number" +.IP "A simple scalar with an extra reference" 4 +.IX Item "A simple scalar with an extra reference" +.IP "A reference to a simple scalar" 4 +.IX Item "A reference to a simple scalar" +.IP "A reference to an array" 4 +.IX Item "A reference to an array" +.IP "A reference to a hash" 4 +.IX Item "A reference to a hash" +.IP "Dumping a large array or hash" 4 +.IX Item "Dumping a large array or hash" +.IP "A reference to an SV which holds a C pointer" 4 +.IX Item "A reference to an SV which holds a C pointer" +.IP "A reference to a subroutine" 4 +.IX Item "A reference to a subroutine" +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Devel::SelfStubber \- generate stubs for a SelfLoading module" +.IX Subsection "Devel::SelfStubber - generate stubs for a SelfLoading module" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Digest \- Modules that calculate message digests" +.IX Subsection "Digest - Modules that calculate message digests" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fIbinary\fR, \fIhex\fR, \fIbase64\fR +.IP "OO INTERFACE" 4 +.IX Item "OO INTERFACE" +\&\f(CW$ctx\fR = Digest\->XXX($arg,...), \f(CW$ctx\fR = Digest\->new(XXX => \f(CW$arg\fR,...), \f(CW$ctx\fR = +Digest::XXX\->new($arg,...), \f(CW$other_ctx\fR = \f(CW$ctx\fR\->clone, \f(CW$ctx\fR\->reset, +\&\f(CW$ctx\fR\->add( \f(CW$data\fR ), \f(CW$ctx\fR\->add( \f(CW$chunk1\fR, \f(CW$chunk2\fR, ... ), \f(CW$ctx\fR\->addfile( +\&\f(CW$io_handle\fR ), \f(CW$ctx\fR\->add_bits( \f(CW$data\fR, \f(CW$nbits\fR ), \f(CW$ctx\fR\->add_bits( \f(CW$bitstring\fR +), \f(CW$ctx\fR\->digest, \f(CW$ctx\fR\->hexdigest, \f(CW$ctx\fR\->b64digest, +\&\f(CW$ctx\fR\->base64_padded_digest +.IP "Digest speed" 4 +.IX Item "Digest speed" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Digest::MD5 \- Perl interface to the MD5 Algorithm" +.IX Subsection "Digest::MD5 - Perl interface to the MD5 Algorithm" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +md5($data,...), md5_hex($data,...), md5_base64($data,...) +.IP METHODS 4 +.IX Item "METHODS" +\&\f(CW$md5\fR = Digest::MD5\->new, \f(CW$md5\fR\->reset, \f(CW$md5\fR\->clone, \f(CW$md5\fR\->add($data,...), +\&\f(CW$md5\fR\->addfile($io_handle), \f(CW$md5\fR\->add_bits($data, \f(CW$nbits\fR), +\&\f(CW$md5\fR\->add_bits($bitstring), \f(CW$md5\fR\->digest, \f(CW$md5\fR\->hexdigest, \f(CW$md5\fR\->b64digest, +\&\f(CW@ctx\fR = \f(CW$md5\fR\->context, \f(CW$md5\fR\->context(@ctx) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "Digest::SHA \- Perl extension for SHA\-1/224/256/384/512" +.IX Subsection "Digest::SHA - Perl extension for SHA-1/224/256/384/512" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "SYNOPSIS (HMAC-SHA)" 4 +.IX Item "SYNOPSIS (HMAC-SHA)" +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "UNICODE AND SIDE EFFECTS" 4 +.IX Item "UNICODE AND SIDE EFFECTS" +.IP "NIST STATEMENT ON SHA\-1" 4 +.IX Item "NIST STATEMENT ON SHA-1" +.IP "PADDING OF BASE64 DIGESTS" 4 +.IX Item "PADDING OF BASE64 DIGESTS" +.IP EXPORT 4 +.IX Item "EXPORT" +.IP "EXPORTABLE FUNCTIONS" 4 +.IX Item "EXPORTABLE FUNCTIONS" +.PD +\&\fBsha1($data, ...)\fR, \fBsha224($data, ...)\fR, \fBsha256($data, ...)\fR, +\&\fBsha384($data, ...)\fR, \fBsha512($data, ...)\fR, \fBsha512224($data, ...)\fR, +\&\fBsha512256($data, ...)\fR, \fBsha1_hex($data, ...)\fR, \fBsha224_hex($data, +\&...)\fR, \fBsha256_hex($data, ...)\fR, \fBsha384_hex($data, ...)\fR, +\&\fBsha512_hex($data, ...)\fR, \fBsha512224_hex($data, ...)\fR, +\&\fBsha512256_hex($data, ...)\fR, \fBsha1_base64($data, ...)\fR, +\&\fBsha224_base64($data, ...)\fR, \fBsha256_base64($data, ...)\fR, +\&\fBsha384_base64($data, ...)\fR, \fBsha512_base64($data, ...)\fR, +\&\fBsha512224_base64($data, ...)\fR, \fBsha512256_base64($data, ...)\fR, +\&\fBnew($alg)\fR, \fBreset($alg)\fR, \fBhashsize\fR, \fBalgorithm\fR, \fBclone\fR, +\&\fBadd($data, ...)\fR, \fBadd_bits($data, \fR\f(CB$nbits\fR\fB)\fR, \fBadd_bits($bits)\fR, +\&\fBaddfile(*FILE)\fR, \fBaddfile($filename [, \fR\f(CB$mode\fR\fB])\fR, \fBgetstate\fR, +\&\fBputstate($str)\fR, \fBdump($filename)\fR, \fBload($filename)\fR, \fBdigest\fR, +\&\fBhexdigest\fR, \fBb64digest\fR, \fBhmac_sha1($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha224($data, +\&\fR\f(CB$key\fR\fB)\fR, \fBhmac_sha256($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha384($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha512($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha512224($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha512256($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha1_hex($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha224_hex($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha256_hex($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha384_hex($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha512_hex($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha512224_hex($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha512256_hex($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha1_base64($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha224_base64($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha256_base64($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha384_base64($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha512_base64($data, \fR\f(CB$key\fR\fB)\fR, \fBhmac_sha512224_base64($data, \fR\f(CB$key\fR\fB)\fR, +\&\fBhmac_sha512256_base64($data, \fR\f(CB$key\fR\fB)\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP ACKNOWLEDGMENTS 4 +.IX Item "ACKNOWLEDGMENTS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Digest::base \- Digest base class" +.IX Subsection "Digest::base - Digest base class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Digest::file \- Calculate digests of files" +.IX Subsection "Digest::file - Calculate digests of files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +digest_file( \f(CW$file\fR, \f(CW$algorithm\fR, [$arg,...] ), digest_file_hex( \f(CW$file\fR, +\&\f(CW$algorithm\fR, [$arg,...] ), digest_file_base64( \f(CW$file\fR, \f(CW$algorithm\fR, [$arg,...] +) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "DirHandle \- (obsolete) supply object methods for directory handles" +.IX Subsection "DirHandle - (obsolete) supply object methods for directory handles" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Dumpvalue \- provides screen dump of Perl data." +.IX Subsection "Dumpvalue - provides screen dump of Perl data." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Creation 4 +.IX Item "Creation" +.PD +\&\f(CW\*(C`arrayDepth\*(C'\fR, \f(CW\*(C`hashDepth\*(C'\fR, \f(CW\*(C`compactDump\*(C'\fR, \f(CW\*(C`veryCompact\*(C'\fR, \f(CW\*(C`globPrint\*(C'\fR, +\&\f(CW\*(C`dumpDBFiles\*(C'\fR, \f(CW\*(C`dumpPackages\*(C'\fR, \f(CW\*(C`dumpReused\*(C'\fR, \f(CW\*(C`tick\*(C'\fR, \f(CW\*(C`quoteHighBit\*(C'\fR, +\&\f(CW\*(C`printUndef\*(C'\fR, \f(CW\*(C`usageOnly\*(C'\fR, unctrl, subdump, bareStringify, quoteHighBit, +stopDbSignal +.IP Methods 4 +.IX Item "Methods" +dumpValue, dumpValues, stringify, dumpvars, set_quote, set_unctrl, +compactDump, veryCompact, set, get +.RE +.RS 4 +.RE +.SS "DynaLoader \- Dynamically load C libraries into Perl code" +.IX Subsection "DynaLoader - Dynamically load C libraries into Perl code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW@dl_library_path\fR, \f(CW@dl_resolve_using\fR, \f(CW@dl_require_symbols\fR, \f(CW@dl_librefs\fR, +\&\f(CW@dl_modules\fR, \f(CW@dl_shared_objects\fR, \fBdl_error()\fR, \f(CW$dl_debug\fR, \f(CW$dl_dlext\fR, +\&\fBdl_findfile()\fR, \fBdl_expandspec()\fR, \fBdl_load_file()\fR, \fBdl_unload_file()\fR, +\&\fBdl_load_flags()\fR, \fBdl_find_symbol()\fR, \fBdl_find_symbol_anywhere()\fR, +\&\fBdl_undef_symbols()\fR, \fBdl_install_xsub()\fR, \fBbootstrap()\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "Encode \- character encodings in Perl" +.IX Subsection "Encode - character encodings in Perl" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP "Table of Contents" 4 +.IX Item "Table of Contents" +.PD +Encode::Alias \- Alias definitions to encodings, Encode::Encoding \- +Encode Implementation Base Class, Encode::Supported \- List of Supported +Encodings, Encode::CN \- Simplified Chinese Encodings, Encode::JP \- +Japanese Encodings, Encode::KR \- Korean Encodings, Encode::TW \- +Traditional Chinese Encodings +.RE +.RS 4 +.RE +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP TERMINOLOGY 4 +.IX Item "TERMINOLOGY" +.RE +.RS 4 +.RE +.IP "THE PERL ENCODING API" 4 +.IX Item "THE PERL ENCODING API" +.RS 4 +.IP "Basic methods" 4 +.IX Item "Basic methods" +.IP "Listing available encodings" 4 +.IX Item "Listing available encodings" +.IP "Defining Aliases" 4 +.IX Item "Defining Aliases" +.IP "Finding IANA Character Set Registry names" 4 +.IX Item "Finding IANA Character Set Registry names" +.RE +.RS 4 +.RE +.IP "Encoding via PerlIO" 4 +.IX Item "Encoding via PerlIO" +.IP "Handling Malformed Data" 4 +.IX Item "Handling Malformed Data" +.RS 4 +.IP "List of \fICHECK\fR values" 4 +.IX Item "List of CHECK values" +.PD +perlqq mode (\fICHECK\fR = Encode::FB_PERLQQ), HTML charref mode (\fICHECK\fR = +Encode::FB_HTMLCREF), XML charref mode (\fICHECK\fR = Encode::FB_XMLCREF) +.IP "coderef for CHECK" 4 +.IX Item "coderef for CHECK" +.RE +.RS 4 +.RE +.PD 0 +.IP "Defining Encodings" 4 +.IX Item "Defining Encodings" +.IP "The UTF8 flag" 4 +.IX Item "The UTF8 flag" +.PD +Goal #1:, Goal #2:, Goal #3:, Goal #4: +.RS 4 +.IP "Messing with Perl's Internals" 4 +.IX Item "Messing with Perl's Internals" +.RE +.RS 4 +.RE +.PD 0 +.IP "UTF\-8 vs. utf8 vs. UTF8" 4 +.IX Item "UTF-8 vs. utf8 vs. UTF8" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Encode::Alias \- alias definitions to encodings" +.IX Subsection "Encode::Alias - alias definitions to encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +As a simple string, As a qr// compiled regular expression, e.g.:, As a code +reference, e.g.: +.RS 4 +.IP "Alias overloading" 4 +.IX Item "Alias overloading" +.RE +.RS 4 +.RE +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Byte \- Single Byte Encodings" +.IX Subsection "Encode::Byte - Single Byte Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::CJKConstants \-\- Internally used by Encode::??::ISO_2022_*" +.IX Subsection "Encode::CJKConstants -- Internally used by Encode::??::ISO_2022_*" +.SS "Encode::CN \- China-based Chinese Encodings" +.IX Subsection "Encode::CN - China-based Chinese Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::CN::HZ \-\- internally used by Encode::CN" +.IX Subsection "Encode::CN::HZ -- internally used by Encode::CN" +.SS "Encode::Config \-\- internally used by Encode" +.IX Subsection "Encode::Config -- internally used by Encode" +.SS "Encode::EBCDIC \- EBCDIC Encodings" +.IX Subsection "Encode::EBCDIC - EBCDIC Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Encoder \-\- Object Oriented Encoder" +.IX Subsection "Encode::Encoder -- Object Oriented Encoder" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP Description 4 +.IX Item "Description" +.RS 4 +.IP "Predefined Methods" 4 +.IX Item "Predefined Methods" +.PD +\&\f(CW$e\fR = Encode::Encoder\->new([$data, \f(CW$encoding\fR]);, \fBencoder()\fR, +\&\f(CW$e\fR\->data([$data]), \f(CW$e\fR\->encoding([$encoding]), +\&\f(CW$e\fR\->bytes([$encoding]) +.IP "Example: base64 transcoder" 4 +.IX Item "Example: base64 transcoder" +.PD 0 +.IP "Operator Overloading" 4 +.IX Item "Operator Overloading" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Encoding \- Encode Implementation Base Class" +.IX Subsection "Encode::Encoding - Encode Implementation Base Class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Methods you should implement" 4 +.IX Item "Methods you should implement" +.PD +\&\->encode($string [,$check]), \->decode($octets [,$check]), +\&\->cat_decode($destination, \f(CW$octets\fR, \f(CW$offset\fR, \f(CW$terminator\fR [,$check]) +.IP "Other methods defined in Encode::Encodings" 4 +.IX Item "Other methods defined in Encode::Encodings" +\&\->name, \->mime_name, \->renew, \->renewed, \->\fBperlio_ok()\fR, +\&\->\fBneeds_lines()\fR +.IP "Example: Encode::ROT13" 4 +.IX Item "Example: Encode::ROT13" +.RE +.RS 4 +.RE +.PD 0 +.IP "Why the heck Encode API is different?" 4 +.IX Item "Why the heck Encode API is different?" +.RS 4 +.IP "Compiled Encodings" 4 +.IX Item "Compiled Encodings" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +Scheme 1, Scheme 2, Other Schemes +.SS "Encode::GSM0338 \-\- ETSI GSM 03.38 Encoding" +.IX Subsection "Encode::GSM0338 -- ETSI GSM 03.38 Encoding" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Septets 4 +.IX Item "Septets" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Guess \-\- Guesses encoding from data" +.IX Subsection "Encode::Guess -- Guesses encoding from data" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Encode::Guess\->set_suspects, Encode::Guess\->add_suspects, +Encode::decode("Guess" ...), Encode::Guess\->guess($data), +guess_encoding($data, [, \fIlist of suspects\fR]) +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP "TO DO" 4 +.IX Item "TO DO" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::JP \- Japanese Encodings" +.IX Subsection "Encode::JP - Japanese Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Note on ISO\-2022\-JP(\-1)?" 4 +.IX Item "Note on ISO-2022-JP(-1)?" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::JP::H2Z \-\- internally used by Encode::JP::2022_JP*" +.IX Subsection "Encode::JP::H2Z -- internally used by Encode::JP::2022_JP*" +.SS "Encode::JP::JIS7 \-\- internally used by Encode::JP" +.IX Subsection "Encode::JP::JIS7 -- internally used by Encode::JP" +.SS "Encode::KR \- Korean Encodings" +.IX Subsection "Encode::KR - Korean Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::KR::2022_KR \-\- internally used by Encode::KR" +.IX Subsection "Encode::KR::2022_KR -- internally used by Encode::KR" +.SS "Encode::MIME::Header \-\- MIME encoding for an unstructured email header" +.IX Subsection "Encode::MIME::Header -- MIME encoding for an unstructured email header" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::MIME::Name, Encode::MIME::NAME \-\- internally used by Encode" +.IX Subsection "Encode::MIME::Name, Encode::MIME::NAME -- internally used by Encode" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "Encode::PerlIO \-\- a detailed document on Encode and PerlIO" +.IX Subsection "Encode::PerlIO -- a detailed document on Encode and PerlIO" +.PD 0 +.IP Overview 4 +.IX Item "Overview" +.IP "How does it work?" 4 +.IX Item "How does it work?" +.IP "Line Buffering" 4 +.IX Item "Line Buffering" +.RS 4 +.IP "How can I tell whether my encoding fully supports PerlIO ?" 4 +.IX Item "How can I tell whether my encoding fully supports PerlIO ?" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Supported \-\- Encodings supported by Encode" +.IX Subsection "Encode::Supported -- Encodings supported by Encode" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Encoding Names" 4 +.IX Item "Encoding Names" +.RE +.RS 4 +.RE +.IP "Supported Encodings" 4 +.IX Item "Supported Encodings" +.RS 4 +.IP "Built-in Encodings" 4 +.IX Item "Built-in Encodings" +.IP "Encode::Unicode \-\- other Unicode encodings" 4 +.IX Item "Encode::Unicode -- other Unicode encodings" +.IP "Encode::Byte \-\- Extended ASCII" 4 +.IX Item "Encode::Byte -- Extended ASCII" +.PD +ISO\-8859 and corresponding vendor mappings, KOI8 \- De Facto Standard for +the Cyrillic world +.IP "gsm0338 \- Hentai Latin 1" 4 +.IX Item "gsm0338 - Hentai Latin 1" +gsm0338 support before 2.19 +.IP "CJK: Chinese, Japanese, Korean (Multibyte)" 4 +.IX Item "CJK: Chinese, Japanese, Korean (Multibyte)" +Encode::CN \-\- Continental China, Encode::JP \-\- Japan, Encode::KR \-\- Korea, +Encode::TW \-\- Taiwan, Encode::HanExtra \-\- More Chinese via CPAN, +Encode::JIS2K \-\- JIS X 0213 encodings via CPAN +.IP "Miscellaneous encodings" 4 +.IX Item "Miscellaneous encodings" +Encode::EBCDIC, Encode::Symbols, Encode::MIME::Header, Encode::Guess +.RE +.RS 4 +.RE +.IP "Unsupported encodings" 4 +.IX Item "Unsupported encodings" +.Vb 4 +\& ISO\-2022\-JP\-2 [RFC1554], ISO\-2022\-CN [RFC1922], Various HP\-UX encodings, +\&Cyrillic encoding ISO\-IR\-111, ISO\-8859\-8\-1 [Hebrew], ISIRI 3342, Iran +\&System, ISIRI 2900 [Farsi], Thai encoding TCVN, Vietnamese encodings VPS, +\&Various Mac encodings, (Mac) Indic encodings +.Ve +.IP "Encoding vs. Charset \-\- terminology" 4 +.IX Item "Encoding vs. Charset -- terminology" +.PD 0 +.IP "Encoding Classification (by Anton Tagunov and Dan Kogai)" 4 +.IX Item "Encoding Classification (by Anton Tagunov and Dan Kogai)" +.RS 4 +.IP "Microsoft-related naming mess" 4 +.IX Item "Microsoft-related naming mess" +.PD +KS_C_5601\-1987, GB2312, Big5, Shift_JIS +.RE +.RS 4 +.RE +.IP Glossary 4 +.IX Item "Glossary" +character repertoire, coded character set (CCS), character encoding scheme +(CES), charset (in MIME context), EUC, ISO\-2022, UCS, UCS\-2, Unicode, UTF, +UTF\-16 +.IP "See Also" 4 +.IX Item "See Also" +.PD 0 +.IP References 4 +.IX Item "References" +.PD +ECMA, ECMA\-035 (eq \f(CW\*(C`ISO\-2022\*(C'\fR), IANA, Assigned Charset Names by IANA, ISO, +RFC, UC, Unicode Glossary +.RS 4 +.IP "Other Notable Sites" 4 +.IX Item "Other Notable Sites" +czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: +"Introduction to i18n" +.IP "Offline sources" 4 +.IX Item "Offline sources" +\&\f(CW\*(C`CJKV Information Processing\*(C'\fR by Ken Lunde +.RE +.RS 4 +.RE +.SS "Encode::Symbol \- Symbol Encodings" +.IX Subsection "Encode::Symbol - Symbol Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::TW \- Taiwan-based Chinese Encodings" +.IX Subsection "Encode::TW - Taiwan-based Chinese Encodings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Unicode \-\- Various Unicode Transformation Formats" +.IX Subsection "Encode::Unicode -- Various Unicode Transformation Formats" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.PD +<http://www.unicode.org/glossary/> says:, Quick Reference +.IP "Size, Endianness, and BOM" 4 +.IX Item "Size, Endianness, and BOM" +.RS 4 +.PD 0 +.IP "by size" 4 +.IX Item "by size" +.IP "by endianness" 4 +.IX Item "by endianness" +.PD +BOM as integer when fetched in network byte order +.RE +.RS 4 +.RE +.IP "Surrogate Pairs" 4 +.IX Item "Surrogate Pairs" +.PD 0 +.IP "Error Checking" 4 +.IX Item "Error Checking" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Encode::Unicode::UTF7 \-\- UTF\-7 encoding" +.IX Subsection "Encode::Unicode::UTF7 -- UTF-7 encoding" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ABSTRACT 4 +.IX Item "ABSTRACT" +.IP "In Practice" 4 +.IX Item "In Practice" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "English \- use nice English (or awk) names for ugly punctuation variables" +.IX Subsection "English - use nice English (or awk) names for ugly punctuation variables" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP PERFORMANCE 4 +.IX Item "PERFORMANCE" +.PD +.SS "Env \- perl module that imports environment variables as scalars or arrays" +.IX Subsection "Env - perl module that imports environment variables as scalars or arrays" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Errno \- System errno constants" +.IX Subsection "Errno - System errno constants" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Exporter \- Implements default import method for modules" +.IX Subsection "Exporter - Implements default import method for modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How to Export" 4 +.IX Item "How to Export" +.IP "Selecting What to Export" 4 +.IX Item "Selecting What to Export" +.IP "How to Import" 4 +.IX Item "How to Import" +.PD +\&\f(CW\*(C`use YourModule;\*(C'\fR, \f(CW\*(C`use YourModule ();\*(C'\fR, \f(CW\*(C`use YourModule qw(...);\*(C'\fR +.RE +.RS 4 +.RE +.IP "Advanced Features" 4 +.IX Item "Advanced Features" +.RS 4 +.PD 0 +.IP "Specialised Import Lists" 4 +.IX Item "Specialised Import Lists" +.IP "Exporting Without Using Exporter's import Method" 4 +.IX Item "Exporting Without Using Exporter's import Method" +.IP "Exporting Without Inheriting from Exporter" 4 +.IX Item "Exporting Without Inheriting from Exporter" +.IP "Module Version Checking" 4 +.IX Item "Module Version Checking" +.IP "Managing Unknown Symbols" 4 +.IX Item "Managing Unknown Symbols" +.IP "Tag Handling Utility Functions" 4 +.IX Item "Tag Handling Utility Functions" +.IP "Generating Combined Tags" 4 +.IX Item "Generating Combined Tags" +.ie n .IP """AUTOLOAD""ed Constants" 4 +.el .IP "\f(CWAUTOLOAD\fRed Constants" 4 +.IX Item "AUTOLOADed Constants" +.RE +.RS 4 +.RE +.IP "Good Practices" 4 +.IX Item "Good Practices" +.RS 4 +.ie n .IP "Declaring @EXPORT_OK and Friends" 4 +.el .IP "Declaring \f(CW@EXPORT_OK\fR and Friends" 4 +.IX Item "Declaring @EXPORT_OK and Friends" +.IP "Playing Safe" 4 +.IX Item "Playing Safe" +.IP "What Not to Export" 4 +.IX Item "What Not to Export" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Exporter::Heavy \- Exporter guts" +.IX Subsection "Exporter::Heavy - Exporter guts" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::CBuilder \- Compile and link C code for Perl modules" +.IX Subsection "ExtUtils::CBuilder - Compile and link C code for Perl modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +new, have_compiler, have_cplusplus, compile, \f(CW\*(C`object_file\*(C'\fR, +\&\f(CW\*(C`include_dirs\*(C'\fR, \f(CW\*(C`extra_compiler_flags\*(C'\fR, \f(CW\*(C`C++\*(C'\fR, link, lib_file, +module_name, extra_linker_flags, link_executable, exe_file, object_file, +lib_file, exe_file, prelink, need_prelink, extra_link_args_after_prelink +.IP "TO DO" 4 +.IX Item "TO DO" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::CBuilder::Platform::Windows \- Builder class for Windows platforms" +.IX Subsection "ExtUtils::CBuilder::Platform::Windows - Builder class for Windows platforms" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::Command \- utilities to replace common UNIX commands in Makefiles etc." +.IX Subsection "ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RE +.RS 4 +.RE +.PD +.PP +cat +.PP +eqtime +.PP +rm_rf +.PP +rm_f +.PP +touch +.PP +mv +.PP +cp +.PP +chmod +.PP +mkpath +.PP +test_f +.PP +test_d +.PP +dos2unix +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::Command::MM \- Commands for the MM's to use in Makefiles" +.IX Subsection "ExtUtils::Command::MM - Commands for the MM's to use in Makefiles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBtest_harness\fR +.PP +\&\fBpod2man\fR +.PP +\&\fBwarn_if_old_packlist\fR +.PP +\&\fBperllocal_install\fR +.PP +\&\fBuninstall\fR +.PP +\&\fBtest_s\fR +.PP +\&\fBcp_nonempty\fR +.SS "ExtUtils::Constant \- generate XS code to import C header constants" +.IX Subsection "ExtUtils::Constant - generate XS code to import C header constants" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.PD +IV, UV, NV, PV, PVN, SV, YES, NO, UNDEF +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PP +constant_types +.PP +XS_constant PACKAGE, TYPES, XS_SUBNAME, C_SUBNAME +.PP +autoload PACKAGE, VERSION, AUTOLOADER +.PP +WriteMakefileSnippet +.PP +WriteConstants ATTRIBUTE => VALUE [, ...], NAME, DEFAULT_TYPE, +BREAKOUT_AT, NAMES, PROXYSUBS, C_FH, C_FILE, XS_FH, XS_FILE, XS_SUBNAME, +C_SUBNAME +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "ExtUtils::Constant::Base \- base class for ExtUtils::Constant objects" +.IX Subsection "ExtUtils::Constant::Base - base class for ExtUtils::Constant objects" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.PD +.PP +header +.PP +memEQ_clause args_hashref +.PP +dump_names arg_hashref, ITEM.. +.PP +assign arg_hashref, VALUE.. +.PP +return_clause arg_hashref, ITEM +.PP +switch_clause arg_hashref, NAMELEN, ITEMHASH, ITEM.. +.PP +params WHAT +.PP +dogfood arg_hashref, ITEM.. +.PP +normalise_items args, default_type, seen_types, seen_items, ITEM.. +.PP +C_constant arg_hashref, ITEM.., name, type, value, macro, default, pre, +post, def_pre, def_post, utf8, weight +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::Constant::Utils \- helper functions for ExtUtils::Constant" +.IX Subsection "ExtUtils::Constant::Utils - helper functions for ExtUtils::Constant" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.PD +C_stringify NAME +.PP +perl_stringify NAME +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "ExtUtils::Constant::XS \- generate C code for XS modules' constants." +.IX Subsection "ExtUtils::Constant::XS - generate C code for XS modules' constants." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::Embed \- Utilities for embedding Perl in C/C++ applications" +.IX Subsection "ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.ie n .IP @EXPORT 4 +.el .IP \f(CW@EXPORT\fR 4 +.IX Item "@EXPORT" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\fBxsinit()\fR, Examples, \fBldopts()\fR, Examples, \fBperl_inc()\fR, \fBccflags()\fR, \fBccdlflags()\fR, +\&\fBccopts()\fR, \fBxsi_header()\fR, xsi_protos(@modules), xsi_body(@modules) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::Install \- install files from here to there" +.IX Subsection "ExtUtils::Install - install files from here to there" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP _chmod($$;$) 4 +.IX Item "_chmod($$;$)" +.IP _warnonce(@) 4 +.IX Item "_warnonce(@)" +.IP _choke(@) 4 +.IX Item "_choke(@)" +.RE +.RS 4 +.RE +.ie n .IP "_move_file_at_boot( $file, $target, $moan )" 4 +.el .IP "_move_file_at_boot( \f(CW$file\fR, \f(CW$target\fR, \f(CW$moan\fR )" 4 +.IX Item "_move_file_at_boot( $file, $target, $moan )" +.ie n .IP "_unlink_or_rename( $file, $tryhard, $installing )" 4 +.el .IP "_unlink_or_rename( \f(CW$file\fR, \f(CW$tryhard\fR, \f(CW$installing\fR )" 4 +.IX Item "_unlink_or_rename( $file, $tryhard, $installing )" +.IP Functions 4 +.IX Item "Functions" +.RS 4 +.IP _get_install_skip 4 +.IX Item "_get_install_skip" +.RE +.RS 4 +.RE +.IP _have_write_access 4 +.IX Item "_have_write_access" +.ie n .IP _can_write_dir($dir) 4 +.el .IP _can_write_dir(\f(CW$dir\fR) 4 +.IX Item "_can_write_dir($dir)" +.IP _mkpath($dir,$show,$mode,$verbose,$dry_run) 4 +.IX Item "_mkpath($dir,$show,$mode,$verbose,$dry_run)" +.IP _copy($from,$to,$verbose,$dry_run) 4 +.IX Item "_copy($from,$to,$verbose,$dry_run)" +.IP _chdir($from) 4 +.IX Item "_chdir($from)" +.IP install 4 +.IX Item "install" +.IP _do_cleanup 4 +.IX Item "_do_cleanup" +.ie n .IP "install_rooted_file( $file )" 4 +.el .IP "install_rooted_file( \f(CW$file\fR )" 4 +.IX Item "install_rooted_file( $file )" +.ie n .IP "install_rooted_dir( $dir )" 4 +.el .IP "install_rooted_dir( \f(CW$dir\fR )" 4 +.IX Item "install_rooted_dir( $dir )" +.ie n .IP "forceunlink( $file, $tryhard )" 4 +.el .IP "forceunlink( \f(CW$file\fR, \f(CW$tryhard\fR )" 4 +.IX Item "forceunlink( $file, $tryhard )" +.ie n .IP "directory_not_empty( $dir )" 4 +.el .IP "directory_not_empty( \f(CW$dir\fR )" 4 +.IX Item "directory_not_empty( $dir )" +.IP install_default 4 +.IX Item "install_default" +.IP uninstall 4 +.IX Item "uninstall" +.IP inc_uninstall($filepath,$libdir,$verbose,$dry_run,$ignore,$results) 4 +.IX Item "inc_uninstall($filepath,$libdir,$verbose,$dry_run,$ignore,$results)" +.IP run_filter($cmd,$src,$dest) 4 +.IX Item "run_filter($cmd,$src,$dest)" +.IP pm_to_blib 4 +.IX Item "pm_to_blib" +.IP _autosplit 4 +.IX Item "_autosplit" +.IP _invokant 4 +.IX Item "_invokant" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.PD +\&\fBPERL_INSTALL_ROOT\fR, \fBEU_INSTALL_IGNORE_SKIP\fR, +\&\fBEU_INSTALL_SITE_SKIPFILE\fR, \fBEU_INSTALL_ALWAYS_COPY\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "ExtUtils::Installed \- Inventory management of installed modules" +.IX Subsection "ExtUtils::Installed - Inventory management of installed modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\fBnew()\fR, \fBmodules()\fR, \fBfiles()\fR, \fBdirectories()\fR, \fBdirectory_tree()\fR, \fBvalidate()\fR, +\&\fBpacklist()\fR, \fBversion()\fR +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::Liblist \- determine libraries to use and how to use them" +.IX Subsection "ExtUtils::Liblist - determine libraries to use and how to use them" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +For static extensions, For dynamic extensions at build/link time, For +dynamic extensions at load time +.RS 4 +.IP EXTRALIBS 4 +.IX Item "EXTRALIBS" +.PD 0 +.IP "LDLOADLIBS and LD_RUN_PATH" 4 +.IX Item "LDLOADLIBS and LD_RUN_PATH" +.IP BSLOADLIBS 4 +.IX Item "BSLOADLIBS" +.RE +.RS 4 +.RE +.IP PORTABILITY 4 +.IX Item "PORTABILITY" +.RS 4 +.IP "VMS implementation" 4 +.IX Item "VMS implementation" +.IP "Win32 implementation" 4 +.IX Item "Win32 implementation" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM \- OS adjusted ExtUtils::MakeMaker subclass" +.IX Subsection "ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::MM::Utils \- ExtUtils::MM methods without dependency on ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM::Utils - ExtUtils::MM methods without dependency on ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +maybe_command +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_AIX \- AIX specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_AIX - AIX specific subclass of ExtUtils::MM_Unix" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_Any \- Platform-agnostic MM methods" +.IX Subsection "ExtUtils::MM_Any - Platform-agnostic MM methods" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Cross-platform helper methods" 4 +.IX Item "Cross-platform helper methods" +.RE +.RS 4 +.RE +.IP Targets 4 +.IX Item "Targets" +.IP "Init methods" 4 +.IX Item "Init methods" +.IP Tools 4 +.IX Item "Tools" +.IP "File::Spec wrappers" 4 +.IX Item "File::Spec wrappers" +.IP Misc 4 +.IX Item "Misc" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::MM_BeOS \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_BeOS - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +os_flavor +.PP +init_linker +.SS "ExtUtils::MM_Cygwin \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_Cygwin - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +os_flavor +.PP +cflags +.PP +replace_manpage_separator +.PP +init_linker +.PP +maybe_command +.PP +dynamic_lib +.PP +install +.SS "ExtUtils::MM_DOS \- DOS specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_DOS - DOS specific subclass of ExtUtils::MM_Unix" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.PD +os_flavor +.RE +.RS 4 +.RE +.PP +\&\fBreplace_manpage_separator\fR +.PP +xs_static_lib_is_xs +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_Darwin \- special behaviors for OS X" +.IX Subsection "ExtUtils::MM_Darwin - special behaviors for OS X" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden Methods" 4 +.IX Item "Overridden Methods" +.RE +.RS 4 +.RE +.PD +.SS "ExtUtils::MM_MacOS \- once produced Makefiles for MacOS Classic" +.IX Subsection "ExtUtils::MM_MacOS - once produced Makefiles for MacOS Classic" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::MM_NW5 \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_NW5 - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +os_flavor +.PP +init_platform, platform_constants +.PP +static_lib_pure_cmd +.PP +xs_static_lib_is_xs +.PP +dynamic_lib +.SS "ExtUtils::MM_OS2 \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +init_dist +.PP +init_linker +.PP +os_flavor +.PP +xs_static_lib_is_xs +.SS "ExtUtils::MM_OS390 \- OS390 specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_OS390 - OS390 specific subclass of ExtUtils::MM_Unix" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overriden methods" 4 +.IX Item "Overriden methods" +.PD +xs_make_dynamic_lib +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_QNX \- QNX specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_QNX - QNX specific subclass of ExtUtils::MM_Unix" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_UWIN \- U/WIN specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_UWIN - U/WIN specific subclass of ExtUtils::MM_Unix" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.PD +os_flavor +.RE +.RS 4 +.RE +.PP +\&\fBreplace_manpage_separator\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_Unix \- methods used by ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP Methods 4 +.IX Item "Methods" +.PD +os_flavor +.PP +c_o (o) +.PP +xs_obj_opt +.PP +dbgoutflag +.PP +cflags (o) +.PP +const_cccmd (o) +.PP +const_config (o) +.PP +const_loadlibs (o) +.PP +constants (o) +.PP +depend (o) +.PP +init_DEST +.PP +init_dist +.PP +dist (o) +.PP +dist_basics (o) +.PP +dist_ci (o) +.PP +dist_core (o) +.PP +\&\fBdist_target\fR +.PP +\&\fBtardist_target\fR +.PP +\&\fBzipdist_target\fR +.PP +\&\fBtarfile_target\fR +.PP +zipfile_target +.PP +uutardist_target +.PP +shdist_target +.PP +dlsyms (o) +.PP +dynamic_bs (o) +.PP +dynamic_lib (o) +.PP +xs_dynamic_lib_macros +.PP +xs_make_dynamic_lib +.PP +exescan +.PP +extliblist +.PP +find_perl +.PP +fixin +.PP +force (o) +.PP +guess_name +.PP +has_link_code +.PP +init_dirscan +.PP +init_MANPODS +.PP +init_MAN1PODS +.PP +init_MAN3PODS +.PP +init_PM +.PP +init_DIRFILESEP +.PP +init_main +.PP +init_tools +.PP +init_linker +.PP +init_lib2arch +.PP +init_PERL +.PP +init_platform, platform_constants +.PP +init_PERM +.PP +init_xs +.PP +install (o) +.PP +installbin (o) +.PP +linkext (o) +.PP +lsdir +.PP +macro (o) +.PP +makeaperl (o) +.PP +xs_static_lib_is_xs (o) +.PP +makefile (o) +.PP +maybe_command +.PP +needs_linking (o) +.PP +parse_abstract +.PP +parse_version +.PP +pasthru (o) +.PP +perl_script +.PP +perldepend (o) +.PP +pm_to_blib +.PP +ppd +.PP +prefixify +.PP +processPL (o) +.PP +specify_shell +.PP +quote_paren +.PP +replace_manpage_separator +.PP +cd +.PP +oneliner +.PP +quote_literal +.PP +escape_newlines +.PP +max_exec_len +.PP +static (o) +.PP +xs_make_static_lib +.PP +static_lib_closures +.PP +static_lib_fixtures +.PP +static_lib_pure_cmd +.PP +staticmake (o) +.PP +subdir_x (o) +.PP +subdirs (o) +.PP +test (o) +.PP +test_via_harness (override) +.PP +test_via_script (override) +.PP +tool_xsubpp (o) +.PP +all_target +.PP +top_targets (o) +.PP +writedoc +.PP +xs_c (o) +.PP +xs_cpp (o) +.PP +xs_o (o) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "ExtUtils::MM_VMS \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Methods always loaded" 4 +.IX Item "Methods always loaded" +.PD +wraplist +.RE +.RS 4 +.RE +.IP Methods 4 +.IX Item "Methods" +guess_name (override) +.PP +find_perl (override) +.PP +_fixin_replace_shebang (override) +.PP +maybe_command (override) +.PP +pasthru (override) +.PP +pm_to_blib (override) +.PP +perl_script (override) +.PP +replace_manpage_separator +.PP +init_DEST +.PP +init_DIRFILESEP +.PP +init_main (override) +.PP +init_tools (override) +.PP +init_platform (override) +.PP +platform_constants +.PP +init_VERSION (override) +.PP +constants (override) +.PP +special_targets +.PP +cflags (override) +.PP +const_cccmd (override) +.PP +tools_other (override) +.PP +init_dist (override) +.PP +c_o (override) +.PP +xs_c (override) +.PP +xs_o (override) +.PP +_xsbuild_replace_macro (override) +.PP +_xsbuild_value (override) +.PP +dlsyms (override) +.PP +xs_obj_opt +.PP +dynamic_lib (override) +.PP +xs_make_static_lib (override) +.PP +static_lib_pure_cmd (override) +.PP +xs_static_lib_is_xs +.PP +extra_clean_files +.PP +zipfile_target, tarfile_target, shdist_target +.PP +install (override) +.PP +perldepend (override) +.PP +makeaperl (override) +.PP +maketext_filter (override) +.PP +prefixify (override) +.PP +cd +.PP +oneliner +.PP +\&\fBecho\fR +.PP +quote_literal +.PP +escape_dollarsigns +.PP +escape_all_dollarsigns +.PP +escape_newlines +.PP +max_exec_len +.PP +init_linker +.PP +catdir (override), catfile (override) +.PP +eliminate_macros +.PP +fixpath +.PP +os_flavor +.PP +is_make_type (override) +.PP +make_type (override) +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "ExtUtils::MM_VOS \- VOS specific subclass of ExtUtils::MM_Unix" +.IX Subsection "ExtUtils::MM_VOS - VOS specific subclass of ExtUtils::MM_Unix" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MM_Win32 \- methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IX Subsection "ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.PD +\&\fBdlsyms\fR +.PP +xs_dlsyms_ext +.PP +replace_manpage_separator +.PP +\&\fBmaybe_command\fR +.PP +\&\fBinit_DIRFILESEP\fR +.PP +init_tools +.PP +init_others +.PP +init_platform, platform_constants +.PP +specify_shell +.PP +constants +.PP +special_targets +.PP +static_lib_pure_cmd +.PP +dynamic_lib +.PP +extra_clean_files +.PP +init_linker +.PP +perl_script +.PP +quote_dep +.PP +xs_obj_opt +.PP +pasthru +.PP +arch_check (override) +.PP +oneliner +.PP +cd +.PP +max_exec_len +.PP +os_flavor +.PP +dbgoutflag +.PP +cflags +.PP +make_type +.SS "ExtUtils::MM_Win95 \- method to customize MakeMaker for Win9X" +.IX Subsection "ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Overridden methods" 4 +.IX Item "Overridden methods" +.PD +max_exec_len +.RE +.RS 4 +.RE +.PP +os_flavor +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "ExtUtils::MY \- ExtUtils::MakeMaker subclass for customization" +.IX Subsection "ExtUtils::MY - ExtUtils::MakeMaker subclass for customization" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::MakeMaker \- Create a module Makefile" +.IX Subsection "ExtUtils::MakeMaker - Create a module Makefile" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "How To Write A Makefile.PL" 4 +.IX Item "How To Write A Makefile.PL" +.IP "Default Makefile Behaviour" 4 +.IX Item "Default Makefile Behaviour" +.IP "make test" 4 +.IX Item "make test" +.IP "make testdb" 4 +.IX Item "make testdb" +.IP "make install" 4 +.IX Item "make install" +.IP INSTALL_BASE 4 +.IX Item "INSTALL_BASE" +.IP "PREFIX and LIB attribute" 4 +.IX Item "PREFIX and LIB attribute" +.IP "AFS users" 4 +.IX Item "AFS users" +.IP "Static Linking of a new Perl Binary" 4 +.IX Item "Static Linking of a new Perl Binary" +.IP "Determination of Perl Library and Installation Locations" 4 +.IX Item "Determination of Perl Library and Installation Locations" +.IP "Which architecture dependent directory?" 4 +.IX Item "Which architecture dependent directory?" +.IP "Using Attributes and Parameters" 4 +.IX Item "Using Attributes and Parameters" +.PD +ABSTRACT, ABSTRACT_FROM, AUTHOR, BINARY_LOCATION, BUILD_REQUIRES, C, +CCFLAGS, CONFIG, CONFIGURE, CONFIGURE_REQUIRES, DEFINE, DESTDIR, DIR, +DISTNAME, DISTVNAME, DLEXT, DL_FUNCS, DL_VARS, EXCLUDE_EXT, EXE_FILES, +FIRST_MAKEFILE, FULLPERL, FULLPERLRUN, FULLPERLRUNINST, FUNCLIST, H, +IMPORTS, INC, INCLUDE_EXT, INSTALLARCHLIB, INSTALLBIN, INSTALLDIRS, +INSTALLMAN1DIR, INSTALLMAN3DIR, INSTALLPRIVLIB, INSTALLSCRIPT, +INSTALLSITEARCH, INSTALLSITEBIN, INSTALLSITELIB, INSTALLSITEMAN1DIR, +INSTALLSITEMAN3DIR, INSTALLSITESCRIPT, INSTALLVENDORARCH, INSTALLVENDORBIN, +INSTALLVENDORLIB, INSTALLVENDORMAN1DIR, INSTALLVENDORMAN3DIR, +INSTALLVENDORSCRIPT, INST_ARCHLIB, INST_BIN, INST_LIB, INST_MAN1DIR, +INST_MAN3DIR, INST_SCRIPT, LD, LDDLFLAGS, LDFROM, LIB, LIBPERL_A, LIBS, +LICENSE, LINKTYPE, MAGICXS, MAKE, MAKEAPERL, MAKEFILE_OLD, MAN1PODS, +MAN3PODS, MAP_TARGET, META_ADD, META_MERGE, MIN_PERL_VERSION, MYEXTLIB, +NAME, NEEDS_LINKING, NOECHO, NORECURS, NO_META, NO_MYMETA, NO_PACKLIST, +NO_PERLLOCAL, NO_VC, OBJECT, OPTIMIZE, PERL, PERL_CORE, PERLMAINCC, +PERL_ARCHLIB, PERL_LIB, PERL_MALLOC_OK, PERLPREFIX, PERLRUN, PERLRUNINST, +PERL_SRC, PERM_DIR, PERM_RW, PERM_RWX, PL_FILES, PM, PMLIBDIRS, PM_FILTER, +POLLUTE, PPM_INSTALL_EXEC, PPM_INSTALL_SCRIPT, PPM_UNINSTALL_EXEC, +PPM_UNINSTALL_SCRIPT, PREFIX, PREREQ_FATAL, PREREQ_PM, PREREQ_PRINT, +PRINT_PREREQ, SITEPREFIX, SIGN, SKIP, TEST_REQUIRES, TYPEMAPS, +USE_MM_LD_RUN_PATH, VENDORPREFIX, VERBINST, VERSION, VERSION_FROM, +VERSION_SYM, XS, XSBUILD, XSMULTI, XSOPT, XSPROTOARG, XS_VERSION +.IP "Additional lowercase attributes" 4 +.IX Item "Additional lowercase attributes" +clean, depend, dist, dynamic_lib, linkext, macro, postamble, realclean, +test, tool_autosplit +.IP "Overriding MakeMaker Methods" 4 +.IX Item "Overriding MakeMaker Methods" +.PD 0 +.IP "The End Of Cargo Cult Programming" 4 +.IX Item "The End Of Cargo Cult Programming" +.PD +\&\f(CW\*(C`MAN3PODS => \*(Aq \*(Aq\*(C'\fR +.IP "Hintsfile support" 4 +.IX Item "Hintsfile support" +.PD 0 +.IP "Distribution Support" 4 +.IX Item "Distribution Support" +.PD +.Vb 3 +\& make distcheck, make skipcheck, make distclean, make veryclean, +\& make manifest, make distdir, make disttest, make tardist, +\&make dist, make uutardist, make shdist, make zipdist, make ci +.Ve +.IP "Module Meta-Data (META and MYMETA)" 4 +.IX Item "Module Meta-Data (META and MYMETA)" +.PD 0 +.IP "Disabling an extension" 4 +.IX Item "Disabling an extension" +.IP "Other Handy Functions" 4 +.IX Item "Other Handy Functions" +.PD +prompt, os_unsupported +.IP "Supported versions of Perl" 4 +.IX Item "Supported versions of Perl" +.RE +.RS 4 +.RE +.PD 0 +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.PD +PERL_MM_OPT, PERL_MM_USE_DEFAULT, PERL_CORE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "ExtUtils::MakeMaker::Config \- Wrapper around Config.pm" +.IX Subsection "ExtUtils::MakeMaker::Config - Wrapper around Config.pm" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::MakeMaker::FAQ \- Frequently Asked Questions About MakeMaker" +.IX Subsection "ExtUtils::MakeMaker::FAQ - Frequently Asked Questions About MakeMaker" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Module Installation" 4 +.IX Item "Module Installation" +.PD +How do I install a module into my home directory?, How do I get MakeMaker +and Module::Build to install to the same place?, How do I keep from +installing man pages?, How do I use a module without installing it?, How +can I organize tests into subdirectories and have them run?, PREFIX vs +INSTALL_BASE from Module::Build::Cookbook, Generating *.pm files with +substitutions eg of \f(CW$VERSION\fR +.IP "Common errors and problems" 4 +.IX Item "Common errors and problems" +"No rule to make target `/usr/lib/perl5/CORE/config.h', needed by +`Makefile'" +.IP "Philosophy and History" 4 +.IX Item "Philosophy and History" +Why not just use <insert other build config tool here>?, What is +Module::Build and how does it relate to MakeMaker?, pure perl. no make, no +shell commands, easier to customize, cleaner internals, less cruft +.IP "Module Writing" 4 +.IX Item "Module Writing" +How do I keep my \f(CW$VERSION\fR up to date without resetting it manually?, What's +this \fIMETA.yml\fR thing and how did it get in my \fIMANIFEST\fR?!, How do I +delete everything not in my \fIMANIFEST\fR?, Which tar should I use on +Windows?, Which zip should I use on Windows for '[ndg]make zipdist'? +.IP XS 4 +.IX Item "XS" +How do I prevent "object version X.XX does not match bootstrap parameter +Y.YY" errors?, How do I make two or more XS files coexist in the same +directory?, XSMULTI, Separate directories, Bootstrapping +.RE +.RS 4 +.RE +.IP DESIGN 4 +.IX Item "DESIGN" +.RS 4 +.PD 0 +.IP "MakeMaker object hierarchy (simplified)" 4 +.IX Item "MakeMaker object hierarchy (simplified)" +.IP "MakeMaker object hierarchy (real)" 4 +.IX Item "MakeMaker object hierarchy (real)" +.IP "The MM_* hierarchy" 4 +.IX Item "The MM_* hierarchy" +.RE +.RS 4 +.RE +.IP PATCHING 4 +.IX Item "PATCHING" +.PD +make a pull request on the MakeMaker github repository, raise a issue on +the MakeMaker github repository, file an RT ticket, email +makemaker@perl.org +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::MakeMaker::Locale \- bundled Encode::Locale" +.IX Subsection "ExtUtils::MakeMaker::Locale - bundled Encode::Locale" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +decode_argv( ), decode_argv( Encode::FB_CROAK ), env( \f(CW$uni_key\fR ), env( +\&\f(CW$uni_key\fR => \f(CW$uni_value\fR ), reinit( ), reinit( \f(CW$encoding\fR ), \f(CW$ENCODING_LOCALE\fR, +\&\f(CW$ENCODING_LOCALE_FS\fR, \f(CW$ENCODING_CONSOLE_IN\fR, \f(CW$ENCODING_CONSOLE_OUT\fR +.IP NOTES 4 +.IX Item "NOTES" +.RS 4 +.PD 0 +.IP Windows 4 +.IX Item "Windows" +.IP "Mac OS X" 4 +.IX Item "Mac OS X" +.IP "POSIX (Linux and other Unixes)" 4 +.IX Item "POSIX (Linux and other Unixes)" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::MakeMaker::Tutorial \- Writing a module with MakeMaker" +.IX Subsection "ExtUtils::MakeMaker::Tutorial - Writing a module with MakeMaker" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "The Mantra" 4 +.IX Item "The Mantra" +.IP "The Layout" 4 +.IX Item "The Layout" +.PD +Makefile.PL, MANIFEST, lib/, t/, Changes, README, INSTALL, MANIFEST.SKIP, +bin/ +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "ExtUtils::Manifest \- Utilities to write and check a MANIFEST file" +.IX Subsection "ExtUtils::Manifest - Utilities to write and check a MANIFEST file" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP mkmanifest 4 +.IX Item "mkmanifest" +.RE +.RS 4 +.RE +.IP manifind 4 +.IX Item "manifind" +.IP manicheck 4 +.IX Item "manicheck" +.IP filecheck 4 +.IX Item "filecheck" +.IP fullcheck 4 +.IX Item "fullcheck" +.IP skipcheck 4 +.IX Item "skipcheck" +.IP maniread 4 +.IX Item "maniread" +.IP maniskip 4 +.IX Item "maniskip" +.IP manicopy 4 +.IX Item "manicopy" +.IP maniadd 4 +.IX Item "maniadd" +.IP MANIFEST 4 +.IX Item "MANIFEST" +.IP MANIFEST.SKIP 4 +.IX Item "MANIFEST.SKIP" +.PD +#!include_default, #!include /Path/to/another/manifest.skip +.IP EXPORT_OK 4 +.IX Item "EXPORT_OK" +.PD 0 +.IP "GLOBAL VARIABLES" 4 +.IX Item "GLOBAL VARIABLES" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +\&\f(CW\*(C`Not in MANIFEST:\*(C'\fR \fIfile\fR, \f(CW\*(C`Skipping\*(C'\fR \fIfile\fR, \f(CW\*(C`No such file:\*(C'\fR \fIfile\fR, +\&\f(CW\*(C`MANIFEST:\*(C'\fR \fI$!\fR, \f(CW\*(C`Added to MANIFEST:\*(C'\fR \fIfile\fR +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +\&\fBPERL_MM_MANIFEST_DEBUG\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "ExtUtils::Miniperl \- write the C code for miniperlmain.c and perlmain.c" +.IX Subsection "ExtUtils::Miniperl - write the C code for miniperlmain.c and perlmain.c" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::Mkbootstrap \- make a bootstrap file for use by DynaLoader" +.IX Subsection "ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::Mksymlists \- write linker options files for dynamic extension" +.IX Subsection "ExtUtils::Mksymlists - write linker options files for dynamic extension" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP REVISION 4 +.IX Item "REVISION" +.PD +.SS "ExtUtils::PL2Bat \- Batch file creation to run perl scripts on Windows" +.IX Subsection "ExtUtils::PL2Bat - Batch file creation to run perl scripts on Windows" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP OVERVIEW 4 +.IX Item "OVERVIEW" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP pl2bat(%opts) 4 +.IX Item "pl2bat(%opts)" +.PD +\&\f(CW\*(C`in\*(C'\fR, \f(CW\*(C`out\*(C'\fR, \f(CW\*(C`ntargs\*(C'\fR, \f(CW\*(C`otherargs\*(C'\fR, \f(CW\*(C`stripsuffix\*(C'\fR, \f(CW\*(C`usewarnings\*(C'\fR, +\&\f(CW\*(C`update\*(C'\fR +.RE +.RS 4 +.RE +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.PP +\&\fBmkfh()\fR +.PP +_\|_find_relocations +.SS "ExtUtils::Packlist \- manage .packlist files" +.IX Subsection "ExtUtils::Packlist - manage .packlist files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\fBnew()\fR, \fBread()\fR, \fBwrite()\fR, \fBvalidate()\fR, \fBpacklist_file()\fR +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ExtUtils::ParseXS \- converts Perl XS code into C code" +.IX Subsection "ExtUtils::ParseXS - converts Perl XS code into C code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORT 4 +.IX Item "EXPORT" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$pxs\fR\->\fBnew()\fR, \f(CW$pxs\fR\->\fBprocess_file()\fR, \fBC++\fR, \fBhiertype\fR, \fBexcept\fR, +\&\fBtypemap\fR, \fBprototypes\fR, \fBversioncheck\fR, \fBlinenumbers\fR, \fBoptimize\fR, +\&\fBinout\fR, \fBargtypes\fR, \fBs\fR, \fBdie_on_error\fR, \f(CW$pxs\fR\->\fBreport_error_count()\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "ExtUtils::ParseXS::Constants \- Initialization values for some globals" +.IX Subsection "ExtUtils::ParseXS::Constants - Initialization values for some globals" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "ExtUtils::ParseXS::Eval \- Clean package to evaluate code in" +.IX Subsection "ExtUtils::ParseXS::Eval - Clean package to evaluate code in" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP SUBROUTINES 4 +.IX Item "SUBROUTINES" +.RS 4 +.ie n .IP "$pxs\->eval_output_typemap_code($typemapcode, $other_hashref)" 4 +.el .IP "\f(CW$pxs\fR\->eval_output_typemap_code($typemapcode, \f(CW$other_hashref\fR)" 4 +.IX Item "$pxs->eval_output_typemap_code($typemapcode, $other_hashref)" +.RE +.RS 4 +.RE +.ie n .IP "$pxs\->eval_input_typemap_code($typemapcode, $other_hashref)" 4 +.el .IP "\f(CW$pxs\fR\->eval_input_typemap_code($typemapcode, \f(CW$other_hashref\fR)" 4 +.IX Item "$pxs->eval_input_typemap_code($typemapcode, $other_hashref)" +.IP TODO 4 +.IX Item "TODO" +.PD +.SS "ExtUtils::ParseXS::Utilities \- Subroutines used with ExtUtils::ParseXS" +.IX Subsection "ExtUtils::ParseXS::Utilities - Subroutines used with ExtUtils::ParseXS" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP SUBROUTINES 4 +.IX Item "SUBROUTINES" +.RS 4 +.ie n .IP standard_typemap_locations() 4 +.el .IP \f(CWstandard_typemap_locations()\fR 4 +.IX Item "standard_typemap_locations()" +.PD +Purpose, Arguments, Return Value +.RE +.RS 4 +.RE +.ie n .IP trim_whitespace() 4 +.el .IP \f(CWtrim_whitespace()\fR 4 +.IX Item "trim_whitespace()" +Purpose, Argument, Return Value +.ie n .IP C_string() 4 +.el .IP \f(CWC_string()\fR 4 +.IX Item "C_string()" +Purpose, Arguments, Return Value +.ie n .IP valid_proto_string() 4 +.el .IP \f(CWvalid_proto_string()\fR 4 +.IX Item "valid_proto_string()" +Purpose, Arguments, Return Value +.ie n .IP process_typemaps() 4 +.el .IP \f(CWprocess_typemaps()\fR 4 +.IX Item "process_typemaps()" +Purpose, Arguments, Return Value +.ie n .IP map_type() 4 +.el .IP \f(CWmap_type()\fR 4 +.IX Item "map_type()" +Purpose, Arguments, Return Value +.ie n .IP standard_XS_defs() 4 +.el .IP \f(CWstandard_XS_defs()\fR 4 +.IX Item "standard_XS_defs()" +Purpose, Arguments, Return Value +.ie n .IP assign_func_args() 4 +.el .IP \f(CWassign_func_args()\fR 4 +.IX Item "assign_func_args()" +Purpose, Arguments, Return Value +.ie n .IP analyze_preprocessor_statements() 4 +.el .IP \f(CWanalyze_preprocessor_statements()\fR 4 +.IX Item "analyze_preprocessor_statements()" +Purpose, Arguments, Return Value +.ie n .IP set_cond() 4 +.el .IP \f(CWset_cond()\fR 4 +.IX Item "set_cond()" +Purpose, Arguments, Return Value +.ie n .IP current_line_number() 4 +.el .IP \f(CWcurrent_line_number()\fR 4 +.IX Item "current_line_number()" +Purpose, Arguments, Return Value +.ie n .IP Warn() 4 +.el .IP \f(CWWarn()\fR 4 +.IX Item "Warn()" +Purpose, Arguments, Return Value +.ie n .IP WarnHint() 4 +.el .IP \f(CWWarnHint()\fR 4 +.IX Item "WarnHint()" +Purpose, Arguments, Return Value +.ie n .IP _MsgHint() 4 +.el .IP \f(CW_MsgHint()\fR 4 +.IX Item "_MsgHint()" +Purpose, Arguments, Return Value +.ie n .IP blurt() 4 +.el .IP \f(CWblurt()\fR 4 +.IX Item "blurt()" +Purpose, Arguments, Return Value +.ie n .IP death() 4 +.el .IP \f(CWdeath()\fR 4 +.IX Item "death()" +Purpose, Arguments, Return Value +.ie n .IP check_conditional_preprocessor_statements() 4 +.el .IP \f(CWcheck_conditional_preprocessor_statements()\fR 4 +.IX Item "check_conditional_preprocessor_statements()" +Purpose, Arguments, Return Value +.ie n .IP escape_file_for_line_directive() 4 +.el .IP \f(CWescape_file_for_line_directive()\fR 4 +.IX Item "escape_file_for_line_directive()" +Purpose, Arguments, Return Value +.ie n .IP """report_typemap_failure""" 4 +.el .IP \f(CWreport_typemap_failure\fR 4 +.IX Item "report_typemap_failure" +Purpose, Arguments, Return Value +.SS "ExtUtils::Typemaps \- Read/Write/Modify Perl/XS typemap files" +.IX Subsection "ExtUtils::Typemaps - Read/Write/Modify Perl/XS typemap files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP new 4 +.IX Item "new" +.IP file 4 +.IX Item "file" +.IP add_typemap 4 +.IX Item "add_typemap" +.IP add_inputmap 4 +.IX Item "add_inputmap" +.IP add_outputmap 4 +.IX Item "add_outputmap" +.IP add_string 4 +.IX Item "add_string" +.IP remove_typemap 4 +.IX Item "remove_typemap" +.IP remove_inputmap 4 +.IX Item "remove_inputmap" +.IP remove_outputmap 4 +.IX Item "remove_outputmap" +.IP get_typemap 4 +.IX Item "get_typemap" +.IP get_inputmap 4 +.IX Item "get_inputmap" +.IP get_outputmap 4 +.IX Item "get_outputmap" +.IP write 4 +.IX Item "write" +.IP as_string 4 +.IX Item "as_string" +.IP as_embedded_typemap 4 +.IX Item "as_embedded_typemap" +.IP merge 4 +.IX Item "merge" +.IP is_empty 4 +.IX Item "is_empty" +.IP list_mapped_ctypes 4 +.IX Item "list_mapped_ctypes" +.IP _get_typemap_hash 4 +.IX Item "_get_typemap_hash" +.IP _get_inputmap_hash 4 +.IX Item "_get_inputmap_hash" +.IP _get_outputmap_hash 4 +.IX Item "_get_outputmap_hash" +.IP _get_prototype_hash 4 +.IX Item "_get_prototype_hash" +.IP clone 4 +.IX Item "clone" +.IP tidy_type 4 +.IX Item "tidy_type" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "ExtUtils::Typemaps::Cmd \- Quick commands for handling typemaps" +.IX Subsection "ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "EXPORTED FUNCTIONS" 4 +.IX Item "EXPORTED FUNCTIONS" +.RS 4 +.IP embeddable_typemap 4 +.IX Item "embeddable_typemap" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "ExtUtils::Typemaps::InputMap \- Entry in the INPUT section of a typemap" +.IX Subsection "ExtUtils::Typemaps::InputMap - Entry in the INPUT section of a typemap" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP new 4 +.IX Item "new" +.IP code 4 +.IX Item "code" +.IP xstype 4 +.IX Item "xstype" +.IP cleaned_code 4 +.IX Item "cleaned_code" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "ExtUtils::Typemaps::OutputMap \- Entry in the OUTPUT section of a typemap" +.IX Subsection "ExtUtils::Typemaps::OutputMap - Entry in the OUTPUT section of a typemap" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP new 4 +.IX Item "new" +.IP code 4 +.IX Item "code" +.IP xstype 4 +.IX Item "xstype" +.IP cleaned_code 4 +.IX Item "cleaned_code" +.IP targetable 4 +.IX Item "targetable" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "ExtUtils::Typemaps::Type \- Entry in the TYPEMAP section of a typemap" +.IX Subsection "ExtUtils::Typemaps::Type - Entry in the TYPEMAP section of a typemap" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP new 4 +.IX Item "new" +.IP proto 4 +.IX Item "proto" +.IP xstype 4 +.IX Item "xstype" +.IP ctype 4 +.IX Item "ctype" +.IP tidy_ctype 4 +.IX Item "tidy_ctype" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.ie n .SS "ExtUtils::testlib \- add blib/* directories to @INC" +.el .SS "ExtUtils::testlib \- add blib/* directories to \f(CW@INC\fP" +.IX Subsection "ExtUtils::testlib - add blib/* directories to @INC" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Fatal \- Replace functions with equivalents which succeed or die" +.IX Subsection "Fatal - Replace functions with equivalents which succeed or die" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP "BEST PRACTICE" 4 +.IX Item "BEST PRACTICE" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +Bad subroutine name for Fatal: \f(CW%s\fR, \f(CW%s\fR is not a Perl subroutine, \f(CW%s\fR is +neither a builtin, nor a Perl subroutine, Cannot make the non-overridable +\&\f(CW%s\fR fatal, Internal error: \f(CW%s\fR +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Fcntl \- load the C Fcntl.h defines" +.IX Subsection "Fcntl - load the C Fcntl.h defines" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP "EXPORTED SYMBOLS" 4 +.IX Item "EXPORTED SYMBOLS" +.PD +.SS "File::Basename \- Parse file paths into directory, filename and suffix." +.IX Subsection "File::Basename - Parse file paths into directory, filename and suffix." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +\&\f(CW\*(C`fileparse\*(C'\fR +.IX Xref "fileparse" +.PP +\&\f(CW\*(C`basename\*(C'\fR +.IX Xref "basename filename" +.PP +\&\f(CW\*(C`dirname\*(C'\fR +.IX Xref "dirname" +.PP +\&\f(CW\*(C`fileparse_set_fstype\*(C'\fR +.IX Xref "filesystem" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "File::Compare \- Compare files or filehandles" +.IX Subsection "File::Compare - Compare files or filehandles" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP RETURN 4 +.IX Item "RETURN" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "File::Copy \- Copy files or filehandles" +.IX Subsection "File::Copy - Copy files or filehandles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +copy , move , syscopy , +rmscopy($from,$to[,$date_flag]) +.IX Xref "copy cp move mv rename syscopy rmscopy" +.IP RETURN 4 +.IX Item "RETURN" +.PD 0 +.IP NOTES 4 +.IX Item "NOTES" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "File::DosGlob \- DOS like globbing and then some" +.IX Subsection "File::DosGlob - DOS like globbing and then some" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "EXPORTS (by request only)" 4 +.IX Item "EXPORTS (by request only)" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Fetch \- A generic file fetching mechanism" +.IX Subsection "File::Fetch - A generic file fetching mechanism" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$ff\fR\->uri, \f(CW$ff\fR\->scheme, \f(CW$ff\fR\->host, \f(CW$ff\fR\->vol, \f(CW$ff\fR\->share, \f(CW$ff\fR\->path, +\&\f(CW$ff\fR\->file, \f(CW$ff\fR\->file_default +.PP +\&\f(CW$ff\fR\->output_file +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.PD 0 +.ie n .IP "$ff = File::Fetch\->new( uri => 'http://some.where.com/dir/file.txt' );" 4 +.el .IP "\f(CW$ff\fR = File::Fetch\->new( uri => 'http://some.where.com/dir/file.txt' );" 4 +.IX Item "$ff = File::Fetch->new( uri => 'http://some.where.com/dir/file.txt' );" +.RE +.RS 4 +.RE +.ie n .IP "$where = $ff\->fetch( [to => /my/output/dir/ | \e$scalar] )" 4 +.el .IP "\f(CW$where\fR = \f(CW$ff\fR\->fetch( [to => /my/output/dir/ | \e$scalar] )" 4 +.IX Item "$where = $ff->fetch( [to => /my/output/dir/ | $scalar] )" +.ie n .IP $ff\->error([BOOL]) 4 +.el .IP \f(CW$ff\fR\->error([BOOL]) 4 +.IX Item "$ff->error([BOOL])" +.IP "HOW IT WORKS" 4 +.IX Item "HOW IT WORKS" +.IP "GLOBAL VARIABLES" 4 +.IX Item "GLOBAL VARIABLES" +.RS 4 +.ie n .IP $File::Fetch::FROM_EMAIL 4 +.el .IP \f(CW$File::Fetch::FROM_EMAIL\fR 4 +.IX Item "$File::Fetch::FROM_EMAIL" +.ie n .IP $File::Fetch::USER_AGENT 4 +.el .IP \f(CW$File::Fetch::USER_AGENT\fR 4 +.IX Item "$File::Fetch::USER_AGENT" +.ie n .IP $File::Fetch::FTP_PASSIVE 4 +.el .IP \f(CW$File::Fetch::FTP_PASSIVE\fR 4 +.IX Item "$File::Fetch::FTP_PASSIVE" +.ie n .IP $File::Fetch::TIMEOUT 4 +.el .IP \f(CW$File::Fetch::TIMEOUT\fR 4 +.IX Item "$File::Fetch::TIMEOUT" +.ie n .IP $File::Fetch::WARN 4 +.el .IP \f(CW$File::Fetch::WARN\fR 4 +.IX Item "$File::Fetch::WARN" +.ie n .IP $File::Fetch::DEBUG 4 +.el .IP \f(CW$File::Fetch::DEBUG\fR 4 +.IX Item "$File::Fetch::DEBUG" +.ie n .IP $File::Fetch::BLACKLIST 4 +.el .IP \f(CW$File::Fetch::BLACKLIST\fR 4 +.IX Item "$File::Fetch::BLACKLIST" +.ie n .IP $File::Fetch::METHOD_FAIL 4 +.el .IP \f(CW$File::Fetch::METHOD_FAIL\fR 4 +.IX Item "$File::Fetch::METHOD_FAIL" +.RE +.RS 4 +.RE +.IP MAPPING 4 +.IX Item "MAPPING" +.IP "FREQUENTLY ASKED QUESTIONS" 4 +.IX Item "FREQUENTLY ASKED QUESTIONS" +.RS 4 +.IP "So how do I use a proxy with File::Fetch?" 4 +.IX Item "So how do I use a proxy with File::Fetch?" +.IP "I used 'lynx' to fetch a file, but its contents is all wrong!" 4 +.IX Item "I used 'lynx' to fetch a file, but its contents is all wrong!" +.IP "Files I'm trying to fetch have reserved characters or non-ASCII characters in them. What do I do?" 4 +.IX Item "Files I'm trying to fetch have reserved characters or non-ASCII characters in them. What do I do?" +.RE +.RS 4 +.RE +.IP TODO 4 +.IX Item "TODO" +.PD +Implement \f(CW$PREFER_BIN\fR +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "File::Find \- Traverse a directory tree." +.IX Subsection "File::Find - Traverse a directory tree." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBfind\fR, \fBfinddepth\fR +.RS 4 +.ie n .IP %options 4 +.el .IP \f(CW%options\fR 4 +.IX Item "%options" +\&\f(CW\*(C`wanted\*(C'\fR, \f(CW\*(C`bydepth\*(C'\fR, \f(CW\*(C`preprocess\*(C'\fR, \f(CW\*(C`postprocess\*(C'\fR, \f(CW\*(C`follow\*(C'\fR, +\&\f(CW\*(C`follow_fast\*(C'\fR, \f(CW\*(C`follow_skip\*(C'\fR, \f(CW\*(C`dangling_symlinks\*(C'\fR, \f(CW\*(C`no_chdir\*(C'\fR, +\&\f(CW\*(C`untaint\*(C'\fR, \f(CW\*(C`untaint_pattern\*(C'\fR, \f(CW\*(C`untaint_skip\*(C'\fR +.IP "The wanted function" 4 +.IX Item "The wanted function" +\&\f(CW$File::Find::dir\fR is the current directory name,, \f(CW$_\fR is the current +filename within that directory, \f(CW$File::Find::name\fR is the complete +pathname to the file +.RE +.RS 4 +.RE +.IP WARNINGS 4 +.IX Item "WARNINGS" +.PD 0 +.IP "BUGS AND CAVEATS" 4 +.IX Item "BUGS AND CAVEATS" +.PD +\&\f(CW$dont_use_nlink\fR, symlinks +.IP HISTORY 4 +.IX Item "HISTORY" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Glob \- Perl extension for BSD glob routine" +.IX Subsection "File::Glob - Perl extension for BSD glob routine" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "META CHARACTERS" 4 +.IX Item "META CHARACTERS" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP "POSIX FLAGS" 4 +.IX Item "POSIX FLAGS" +.PD +\&\f(CW\*(C`GLOB_ERR\*(C'\fR, \f(CW\*(C`GLOB_LIMIT\*(C'\fR, \f(CW\*(C`GLOB_MARK\*(C'\fR, \f(CW\*(C`GLOB_NOCASE\*(C'\fR, \f(CW\*(C`GLOB_NOCHECK\*(C'\fR, +\&\f(CW\*(C`GLOB_NOSORT\*(C'\fR, \f(CW\*(C`GLOB_BRACE\*(C'\fR, \f(CW\*(C`GLOB_NOMAGIC\*(C'\fR, \f(CW\*(C`GLOB_QUOTE\*(C'\fR, +\&\f(CW\*(C`GLOB_TILDE\*(C'\fR, \f(CW\*(C`GLOB_CSH\*(C'\fR, \f(CW\*(C`GLOB_ALPHASORT\*(C'\fR +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +\&\f(CW\*(C`GLOB_NOSPACE\*(C'\fR, \f(CW\*(C`GLOB_ABEND\*(C'\fR +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "File::GlobMapper \- Extend File Glob to Allow Input and Output Files" +.IX Subsection "File::GlobMapper - Extend File Glob to Allow Input and Output Files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Behind The Scenes" 4 +.IX Item "Behind The Scenes" +.IP Limitations 4 +.IX Item "Limitations" +.IP "Input File Glob" 4 +.IX Item "Input File Glob" +.PD +\&\fB~\fR, \fB~user\fR, \fB.\fR, \fB*\fR, \fB?\fR, \fB\e\fR, \fB[]\fR, \fB{,}\fR, \fB()\fR +.IP "Output File Glob" 4 +.IX Item "Output File Glob" +"*", #1 +.IP "Returned Data" 4 +.IX Item "Returned Data" +.RE +.RS 4 +.RE +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "A Rename script" 4 +.IX Item "A Rename script" +.IP "A few example globmaps" 4 +.IX Item "A few example globmaps" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "File::Path \- Create or remove directory trees" +.IX Subsection "File::Path - Create or remove directory trees" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +make_path( \f(CW$dir1\fR, \f(CW$dir2\fR, .... ), make_path( \f(CW$dir1\fR, \f(CW$dir2\fR, ...., \e%opts ), +mode => \f(CW$num\fR, chmod => \f(CW$num\fR, verbose => \f(CW$bool\fR, error => \e$err, owner => +\&\f(CW$owner\fR, user => \f(CW$owner\fR, uid => \f(CW$owner\fR, group => \f(CW$group\fR, mkpath( \f(CW$dir\fR ), +mkpath( \f(CW$dir\fR, \f(CW$verbose\fR, \f(CW$mode\fR ), mkpath( [$dir1, \f(CW$dir2\fR,...], \f(CW$verbose\fR, +\&\f(CW$mode\fR ), mkpath( \f(CW$dir1\fR, \f(CW$dir2\fR,..., \e%opt ), remove_tree( \f(CW$dir1\fR, \f(CW$dir2\fR, .... +), remove_tree( \f(CW$dir1\fR, \f(CW$dir2\fR, ...., \e%opts ), verbose => \f(CW$bool\fR, safe => +\&\f(CW$bool\fR, keep_root => \f(CW$bool\fR, result => \e$res, error => \e$err, rmtree( \f(CW$dir\fR ), +rmtree( \f(CW$dir\fR, \f(CW$verbose\fR, \f(CW$safe\fR ), rmtree( [$dir1, \f(CW$dir2\fR,...], \f(CW$verbose\fR, +\&\f(CW$safe\fR ), rmtree( \f(CW$dir1\fR, \f(CW$dir2\fR,..., \e%opt ) +.RS 4 +.IP "ERROR HANDLING" 4 +.IX Item "ERROR HANDLING" +\&\fBNOTE:\fR +.IP NOTES 4 +.IX Item "NOTES" +<http://cve.circl.lu/cve/CVE\-2004\-0452>, +<http://cve.circl.lu/cve/CVE\-2005\-0448> +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +mkdir [path]: [errmsg] (SEVERE), No root path(s) specified, No such file or +directory, cannot fetch initial working directory: [errmsg], cannot stat +initial working directory: [errmsg], cannot chdir to [dir]: [errmsg], +directory [dir] changed before chdir, expected dev=[n] ino=[n], actual +dev=[n] ino=[n], aborting. (FATAL), cannot make directory [dir] +read+writeable: [errmsg], cannot read [dir]: [errmsg], cannot reset chmod +[dir]: [errmsg], cannot remove [dir] when cwd is [dir], cannot chdir to +[parent\-dir] from [child\-dir]: [errmsg], aborting. (FATAL), cannot stat +prior working directory [dir]: [errmsg], aborting. (FATAL), previous +directory [parent\-dir] changed before entering [child\-dir], expected +dev=[n] ino=[n], actual dev=[n] ino=[n], aborting. (FATAL), cannot make +directory [dir] writeable: [errmsg], cannot remove directory [dir]: +[errmsg], cannot restore permissions of [dir] to [0nnn]: [errmsg], cannot +make file [file] writeable: [errmsg], cannot unlink file [file]: [errmsg], +cannot restore permissions of [file] to [0nnn]: [errmsg], unable to map +[owner] to a uid, ownership not changed");, unable to map [group] to a gid, +group ownership not changed +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP "BUGS AND LIMITATIONS" 4 +.IX Item "BUGS AND LIMITATIONS" +.RS 4 +.IP "MULTITHREADED APPLICATIONS" 4 +.IX Item "MULTITHREADED APPLICATIONS" +.IP "NFS Mount Points" 4 +.IX Item "NFS Mount Points" +.IP "REPORTING BUGS" 4 +.IX Item "REPORTING BUGS" +.RE +.RS 4 +.RE +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.PD +<\fIbulkdd@cpan.org\fR>, Charlie Gonzalez <\fIitcharlie@cpan.org\fR>, Craig A. +Berry <\fIcraigberry@mac.com\fR>, James E Keenan <\fIjkeenan@cpan.org\fR>, John +Lightsey <\fIjohn@perlsec.org\fR>, Nigel Horne <\fInjh@bandsman.co.uk\fR>, +Richard Elberger <\fIriche@cpan.org\fR>, Ryan Yee <\fIryee@cpan.org\fR>, Skye +Shaw <\fIshaw@cpan.org\fR>, Tom Lutz <\fItommylutz@gmail.com\fR>, Will Sheppard +<\fIwillsheppard@github\fR> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "File::Spec \- portably perform operations on file names" +.IX Subsection "File::Spec - portably perform operations on file names" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +canonpath , catdir , catfile , curdir +, devnull , rootdir , tmpdir , updir +, no_upwards, case_tolerant, file_name_is_absolute, path , +join , splitpath , splitdir + , \fBcatpath()\fR, abs2rel +, \fBrel2abs()\fR +.IX Xref "canonpath catdir catfile curdir devnull rootdir tmpdir updir path join, path splitpath split, path splitdir split, dir abs2rel absolute, path relative, path rel2abs absolute, path relative, path" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "File::Spec::AmigaOS \- File::Spec for AmigaOS" +.IX Subsection "File::Spec::AmigaOS - File::Spec for AmigaOS" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +tmpdir +.PP +file_name_is_absolute +.SS "File::Spec::Cygwin \- methods for Cygwin file specs" +.IX Subsection "File::Spec::Cygwin - methods for Cygwin file specs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +canonpath +.PP +file_name_is_absolute +.PP +tmpdir (override) +.PP +case_tolerant +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "File::Spec::Epoc \- methods for Epoc file specs" +.IX Subsection "File::Spec::Epoc - methods for Epoc file specs" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +\&\fBcanonpath()\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Spec::Functions \- portably perform operations on file names" +.IX Subsection "File::Spec::Functions - portably perform operations on file names" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Exports 4 +.IX Item "Exports" +.RE +.RS 4 +.RE +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Spec::Mac \- File::Spec for Mac OS (Classic)" +.IX Subsection "File::Spec::Mac - File::Spec for Mac OS (Classic)" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +canonpath +.PP +\&\fBcatdir()\fR +.PP +catfile +.PP +curdir +.PP +devnull +.PP +rootdir +.PP +tmpdir +.PP +updir +.PP +file_name_is_absolute +.PP +path +.PP +splitpath +.PP +splitdir +.PP +catpath +.PP +abs2rel +.PP +rel2abs +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD 0 +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Spec::OS2 \- methods for OS/2 file specs" +.IX Subsection "File::Spec::OS2 - methods for OS/2 file specs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +tmpdir, splitpath +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "File::Spec::Unix \- File::Spec for Unix, base for other File::Spec modules" +.IX Subsection "File::Spec::Unix - File::Spec for Unix, base for other File::Spec modules" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\fBcanonpath()\fR +.PP +\&\fBcatdir()\fR +.PP +catfile +.PP +curdir +.PP +devnull +.PP +rootdir +.PP +tmpdir +.PP +updir +.PP +no_upwards +.PP +case_tolerant +.PP +file_name_is_absolute +.PP +path +.PP +join +.PP +splitpath +.PP +splitdir +.PP +\&\fBcatpath()\fR +.PP +abs2rel +.PP +\&\fBrel2abs()\fR +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Spec::VMS \- methods for VMS file specs" +.IX Subsection "File::Spec::VMS - methods for VMS file specs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +canonpath (override) +.PP +catdir (override) +.PP +catfile (override) +.PP +curdir (override) +.PP +devnull (override) +.PP +rootdir (override) +.PP +tmpdir (override) +.PP +updir (override) +.PP +case_tolerant (override) +.PP +path (override) +.PP +file_name_is_absolute (override) +.PP +splitpath (override) +.PP +splitdir (override) +.PP +catpath (override) +.PP +abs2rel (override) +.PP +rel2abs (override) +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Spec::Win32 \- methods for Win32 file specs" +.IX Subsection "File::Spec::Win32 - methods for Win32 file specs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +devnull +.PP +tmpdir +.PP +case_tolerant +.PP +file_name_is_absolute +.PP +catfile +.PP +canonpath +.PP +splitpath +.PP +splitdir +.PP +catpath +.IP "Note For File::Spec::Win32 Maintainers" 4 +.IX Item "Note For File::Spec::Win32 Maintainers" +.PD 0 +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "File::Temp \- return name and handle of a temporary file safely" +.IX Subsection "File::Temp - return name and handle of a temporary file safely" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP PORTABILITY 4 +.IX Item "PORTABILITY" +.IP "OBJECT-ORIENTED INTERFACE" 4 +.IX Item "OBJECT-ORIENTED INTERFACE" +.PD +\&\fBnew\fR, \fBnewdir\fR, \fBfilename\fR, \fBdirname\fR, \fBunlink_on_destroy\fR, +\&\fBDESTROY\fR +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +\&\fBtempfile\fR, \fBtempdir\fR +.IP "MKTEMP FUNCTIONS" 4 +.IX Item "MKTEMP FUNCTIONS" +\&\fBmkstemp\fR, \fBmkstemps\fR, \fBmkdtemp\fR, \fBmktemp\fR +.IP "POSIX FUNCTIONS" 4 +.IX Item "POSIX FUNCTIONS" +\&\fBtmpnam\fR, \fBtmpfile\fR +.IP "ADDITIONAL FUNCTIONS" 4 +.IX Item "ADDITIONAL FUNCTIONS" +\&\fBtempnam\fR +.IP "UTILITY FUNCTIONS" 4 +.IX Item "UTILITY FUNCTIONS" +\&\fBunlink0\fR, \fBcmpstat\fR, \fBunlink1\fR, \fBcleanup\fR +.IP "PACKAGE VARIABLES" 4 +.IX Item "PACKAGE VARIABLES" +\&\fBsafe_level\fR, STANDARD, MEDIUM, HIGH, TopSystemUID, \fR\f(CB$KEEP_ALL\fR\fB\fR, +\&\fB\fR\f(CB$DEBUG\fR\fB\fR +.IP WARNING 4 +.IX Item "WARNING" +.RS 4 +.PD 0 +.IP "Temporary files and NFS" 4 +.IX Item "Temporary files and NFS" +.IP Forking 4 +.IX Item "Forking" +.IP "Directory removal" 4 +.IX Item "Directory removal" +.IP "Taint mode" 4 +.IX Item "Taint mode" +.IP BINMODE 4 +.IX Item "BINMODE" +.RE +.RS 4 +.RE +.IP HISTORY 4 +.IX Item "HISTORY" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "File::stat \- by-name interface to Perl's built-in \fBstat()\fP functions" +.IX Subsection "File::stat - by-name interface to Perl's built-in stat() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP ERRORS 4 +.IX Item "ERRORS" +.PD +\&\-%s is not implemented on a File::stat object +.IP WARNINGS 4 +.IX Item "WARNINGS" +File::stat ignores use filetest 'access', File::stat ignores VMS ACLs +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "FileCache \- keep more files open than the system permits" +.IX Subsection "FileCache - keep more files open than the system permits" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +cacheout EXPR, cacheout MODE, EXPR +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.PD +.SS "FileHandle \- supply object methods for filehandles" +.IX Subsection "FileHandle - supply object methods for filehandles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$fh\fR\->print, \f(CW$fh\fR\->printf, \f(CW$fh\fR\->getline, \f(CW$fh\fR\->getlines +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "Filter::Simple \- Simplified source filtering" +.IX Subsection "Filter::Simple - Simplified source filtering" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "The Problem" 4 +.IX Item "The Problem" +.IP "A Solution" 4 +.IX Item "A Solution" +.IP "Disabling or changing <no> behaviour" 4 +.IX Item "Disabling or changing <no> behaviour" +.IP "All-in-one interface" 4 +.IX Item "All-in-one interface" +.IP "Filtering only specific components of source code" 4 +.IX Item "Filtering only specific components of source code" +.PD +\&\f(CW"code"\fR, \f(CW"code_no_comments"\fR, \f(CW"executable"\fR, +\&\f(CW"executable_no_comments"\fR, \f(CW"quotelike"\fR, \f(CW"string"\fR, \f(CW"regex"\fR, +\&\f(CW"all"\fR +.IP "Filtering only the code parts of source code" 4 +.IX Item "Filtering only the code parts of source code" +.PD 0 +.ie n .IP "Using Filter::Simple with an explicit ""import"" subroutine" 4 +.el .IP "Using Filter::Simple with an explicit \f(CWimport\fR subroutine" 4 +.IX Item "Using Filter::Simple with an explicit import subroutine" +.IP "Using Filter::Simple and Exporter together" 4 +.IX Item "Using Filter::Simple and Exporter together" +.IP "How it works" 4 +.IX Item "How it works" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTACT 4 +.IX Item "CONTACT" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Filter::Util::Call \- Perl Source Filter Utility Module" +.IX Subsection "Filter::Util::Call - Perl Source Filter Utility Module" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "\fBuse Filter::Util::Call\fR" 4 +.IX Item "use Filter::Util::Call" +.IP \fBimport()\fR 4 +.IX Item "import()" +.IP \fBfilter_add()\fR 4 +.IX Item "filter_add()" +.IP "\fBfilter() and anonymous sub\fR" 4 +.IX Item "filter() and anonymous sub" +.PD +\&\fR\f(CB$_\fR\fB\fR, \fB\fR\f(CB$status\fR\fB\fR, \fBfilter_read\fR and \fBfilter_read_exact\fR, \fBfilter_del\fR, +\&\fIreal_import\fR, \fI\fR\f(BIunimport()\fR\fI\fR +.RE +.RS 4 +.RE +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +_\|_DATA_\|_ is ignored, Max. codesize limited to 32\-bit +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Example 1: A simple filter." 4 +.IX Item "Example 1: A simple filter." +.IP "Example 2: Using the context" 4 +.IX Item "Example 2: Using the context" +.IP "Example 3: Using the context within the filter" 4 +.IX Item "Example 3: Using the context within the filter" +.IP "Example 4: Using filter_del" 4 +.IX Item "Example 4: Using filter_del" +.RE +.RS 4 +.RE +.IP Filter::Simple 4 +.IX Item "Filter::Simple" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP DATE 4 +.IX Item "DATE" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "FindBin \- Locate directory of original perl script" +.IX Subsection "FindBin - Locate directory of original perl script" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "EXPORTABLE VARIABLES" 4 +.IX Item "EXPORTABLE VARIABLES" +.IP "KNOWN ISSUES" 4 +.IX Item "KNOWN ISSUES" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "GDBM_File \- Perl5 access to the gdbm library." +.IX Subsection "GDBM_File - Perl5 access to the gdbm library." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Tie 4 +.IX Item "Tie" +.PD +\&\fBGDBM_READER\fR, \fBGDBM_WRITER\fR, \fBGDBM_WRCREAT\fR, \fBGDBM_NEWDB\fR +.RE +.RS 4 +.RE +.IP "STATIC METHODS" 4 +.IX Item "STATIC METHODS" +.RS 4 +.PD 0 +.IP GDBM_version 4 +.IX Item "GDBM_version" +.PD +1 \- exact guess, 2 \- approximate, 3 \- rough guess +.RE +.RS 4 +.RE +.IP "ERROR HANDLING" 4 +.IX Item "ERROR HANDLING" +.RS 4 +.PD 0 +.ie n .IP $GDBM_File::gdbm_errno 4 +.el .IP \f(CW$GDBM_File::gdbm_errno\fR 4 +.IX Item "$GDBM_File::gdbm_errno" +.IP gdbm_check_syserr 4 +.IX Item "gdbm_check_syserr" +.RE +.RS 4 +.RE +.IP "DATABASE METHODS" 4 +.IX Item "DATABASE METHODS" +.RS 4 +.IP close 4 +.IX Item "close" +.IP errno 4 +.IX Item "errno" +.IP syserrno 4 +.IX Item "syserrno" +.IP strerror 4 +.IX Item "strerror" +.IP clear_error 4 +.IX Item "clear_error" +.IP needs_recovery 4 +.IX Item "needs_recovery" +.IP reorganize 4 +.IX Item "reorganize" +.IP sync 4 +.IX Item "sync" +.IP count 4 +.IX Item "count" +.IP flags 4 +.IX Item "flags" +.IP dbname 4 +.IX Item "dbname" +.IP cache_size 4 +.IX Item "cache_size" +.IP block_size 4 +.IX Item "block_size" +.IP sync_mode 4 +.IX Item "sync_mode" +.IP centfree 4 +.IX Item "centfree" +.IP coalesce 4 +.IX Item "coalesce" +.IP mmap 4 +.IX Item "mmap" +.IP mmapsize 4 +.IX Item "mmapsize" +.IP recover 4 +.IX Item "recover" +.PD +err => sub { ... }, backup => \e$str, max_failed_keys => \f(CW$n\fR, +max_failed_buckets => \f(CW$n\fR, max_failures => \f(CW$n\fR, stat => \e%hash, +recovered_keys, recovered_buckets, failed_keys, failed_buckets +.IP convert 4 +.IX Item "convert" +.PD 0 +.IP dump 4 +.IX Item "dump" +.PD +\&\fBbinary\fR => 1, \fBmode\fR => \fIMODE\fR, \fBoverwrite\fR => 1 +.IP load 4 +.IX Item "load" +\&\fBreplace\fR => 1, \fBrestore_mode\fR => 0 | 1, \fBrestore_owner\fR => 0 | 1, +\&\fBstrict_errors\fR => 1 +.RE +.RS 4 +.RE +.IP "CRASH TOLERANCE" 4 +.IX Item "CRASH TOLERANCE" +.RS 4 +.PD 0 +.IP crash_tolerance_status 4 +.IX Item "crash_tolerance_status" +.IP failure_atomic 4 +.IX Item "failure_atomic" +.IP latest_snapshot 4 +.IX Item "latest_snapshot" +.PD +GDBM_SNAPSHOT_BAD, GDBM_SNAPSHOT_ERR, GDBM_SNAPSHOT_SAME, +GDBM_SNAPSHOT_SUSPICIOUS +.RE +.RS 4 +.RE +.IP AVAILABILITY 4 +.IX Item "AVAILABILITY" +.PD 0 +.IP "SECURITY AND PORTABILITY" 4 +.IX Item "SECURITY AND PORTABILITY" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Getopt::Long \- Extended processing of command line options" +.IX Subsection "Getopt::Long - Extended processing of command line options" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Command Line Options, an Introduction" 4 +.IX Item "Command Line Options, an Introduction" +.IP "Getting Started with Getopt::Long" 4 +.IX Item "Getting Started with Getopt::Long" +.RS 4 +.IP "Simple options" 4 +.IX Item "Simple options" +.IP "A little bit less simple options" 4 +.IX Item "A little bit less simple options" +.IP "Mixing command line option with other arguments" 4 +.IX Item "Mixing command line option with other arguments" +.IP "Options with values" 4 +.IX Item "Options with values" +.IP "Options with multiple values" 4 +.IX Item "Options with multiple values" +.IP "Options with hash values" 4 +.IX Item "Options with hash values" +.IP "User-defined subroutines to handle options" 4 +.IX Item "User-defined subroutines to handle options" +.IP "Options with multiple names" 4 +.IX Item "Options with multiple names" +.IP "Case and abbreviations" 4 +.IX Item "Case and abbreviations" +.IP "Summary of Option Specifications" 4 +.IX Item "Summary of Option Specifications" +.PD +!, +, s, i, o, f, : \fItype\fR [ \fIdesttype\fR ], : \fInumber\fR [ \fIdesttype\fR ], : ++ [ \fIdesttype\fR ] +.RE +.RS 4 +.RE +.IP "Advanced Possibilities" 4 +.IX Item "Advanced Possibilities" +.RS 4 +.PD 0 +.IP "Object oriented interface" 4 +.IX Item "Object oriented interface" +.IP "Callback object" 4 +.IX Item "Callback object" +.PD +name, given +.IP "Thread Safety" 4 +.IX Item "Thread Safety" +.PD 0 +.IP "Documentation and help texts" 4 +.IX Item "Documentation and help texts" +.IP "Parsing options from an arbitrary array" 4 +.IX Item "Parsing options from an arbitrary array" +.IP "Parsing options from an arbitrary string" 4 +.IX Item "Parsing options from an arbitrary string" +.IP "Storing options values in a hash" 4 +.IX Item "Storing options values in a hash" +.IP Bundling 4 +.IX Item "Bundling" +.IP "The lonesome dash" 4 +.IX Item "The lonesome dash" +.IP "Argument callback" 4 +.IX Item "Argument callback" +.RE +.RS 4 +.RE +.IP "Configuring Getopt::Long" 4 +.IX Item "Configuring Getopt::Long" +.PD +default, posix_default, auto_abbrev, getopt_compat, gnu_compat, gnu_getopt, +require_order, permute, bundling (default: disabled), bundling_override +(default: disabled), ignore_case (default: enabled), ignore_case_always +(default: disabled), auto_version (default:disabled), auto_help +(default:disabled), pass_through (default: disabled), prefix, +prefix_pattern, long_prefix_pattern, debug (default: disabled) +.IP "Exportable Methods" 4 +.IX Item "Exportable Methods" +VersionMessage, \f(CW\*(C`\-message\*(C'\fR, \f(CW\*(C`\-msg\*(C'\fR, \f(CW\*(C`\-exitval\*(C'\fR, \f(CW\*(C`\-output\*(C'\fR, HelpMessage +.IP "Return values and Errors" 4 +.IX Item "Return values and Errors" +.PD 0 +.IP Legacy 4 +.IX Item "Legacy" +.RS 4 +.IP "Default destinations" 4 +.IX Item "Default destinations" +.IP "Alternative option starters" 4 +.IX Item "Alternative option starters" +.IP "Configuration variables" 4 +.IX Item "Configuration variables" +.RE +.RS 4 +.RE +.IP "Tips and Techniques" 4 +.IX Item "Tips and Techniques" +.RS 4 +.IP "Pushing multiple values in a hash option" 4 +.IX Item "Pushing multiple values in a hash option" +.RE +.RS 4 +.RE +.IP Troubleshooting 4 +.IX Item "Troubleshooting" +.RS 4 +.IP "GetOptions does not return a false result when an option is not supplied" 4 +.IX Item "GetOptions does not return a false result when an option is not supplied" +.IP "GetOptions does not split the command line correctly" 4 +.IX Item "GetOptions does not split the command line correctly" +.IP "Undefined subroutine &main::GetOptions called" 4 +.IX Item "Undefined subroutine &main::GetOptions called" +.IP "How do I put a ""\-?"" option into a Getopt::Long?" 4 +.IX Item "How do I put a ""-?"" option into a Getopt::Long?" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND DISCLAIMER" 4 +.IX Item "COPYRIGHT AND DISCLAIMER" +.PD +.SS "Getopt::Std \- Process single-character switches with switch clustering" +.IX Subsection "Getopt::Std - Process single-character switches with switch clustering" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.ie n .IP """\-\-help"" and ""\-\-version""" 4 +.el .IP "\f(CW\-\-help\fR and \f(CW\-\-version\fR" 4 +.IX Item "--help and --version" +.PD +.SS "HTTP::Tiny \- A small, simple, correct HTTP/1.1 client" +.IX Subsection "HTTP::Tiny - A small, simple, correct HTTP/1.1 client" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP new 4 +.IX Item "new" +.IP get|head|put|post|patch|delete 4 +.IX Item "get|head|put|post|patch|delete" +.IP post_form 4 +.IX Item "post_form" +.IP mirror 4 +.IX Item "mirror" +.IP request 4 +.IX Item "request" +.IP www_form_urlencode 4 +.IX Item "www_form_urlencode" +.IP can_ssl 4 +.IX Item "can_ssl" +.IP connected 4 +.IX Item "connected" +.RE +.RS 4 +.RE +.IP "TLS/SSL SUPPORT" 4 +.IX Item "TLS/SSL SUPPORT" +.IP "PROXY SUPPORT" 4 +.IX Item "PROXY SUPPORT" +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.RS 4 +.IP "Bugs / Feature Requests" 4 +.IX Item "Bugs / Feature Requests" +.IP "Source Code" 4 +.IX Item "Source Code" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Hash::Util \- A selection of general-utility hash subroutines" +.IX Subsection "Hash::Util - A selection of general-utility hash subroutines" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Restricted hashes" 4 +.IX Item "Restricted hashes" +.PD +\&\fBlock_keys\fR, \fBunlock_keys\fR +.RE +.RS 4 +.RE +.PP +\&\fBlock_keys_plus\fR +.PP +\&\fBlock_value\fR, \fBunlock_value\fR +.PP +\&\fBlock_hash\fR, \fBunlock_hash\fR +.PP +\&\fBlock_hash_recurse\fR, \fBunlock_hash_recurse\fR +.PP +\&\fBhashref_locked\fR, \fBhash_locked\fR +.PP +\&\fBhashref_unlocked\fR, \fBhash_unlocked\fR +.PP +\&\fBlegal_keys\fR, \fBhidden_keys\fR, \fBall_keys\fR, \fBhash_seed\fR, \fBhash_value\fR, +\&\fBbucket_info\fR, \fBbucket_stats\fR, \fBbucket_array\fR +.PP +\&\fBbucket_stats_formatted\fR +.PP +\&\fBhv_store\fR, \fBhash_traversal_mask\fR, \fBbucket_ratio\fR, \fBused_buckets\fR, +\&\fBnum_buckets\fR +.IP "Operating on references to hashes." 4 +.IX Item "Operating on references to hashes." +lock_ref_keys, unlock_ref_keys, lock_ref_keys_plus, lock_ref_value, +unlock_ref_value, lock_hashref, unlock_hashref, lock_hashref_recurse, +unlock_hashref_recurse, hash_ref_unlocked, legal_ref_keys, hidden_ref_keys +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Hash::Util::FieldHash \- Support for Inside-Out Classes" +.IX Subsection "Hash::Util::FieldHash - Support for Inside-Out Classes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +id, id_2obj, register, idhash, idhashes, fieldhash, fieldhashes +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "The Inside-out Technique" 4 +.IX Item "The Inside-out Technique" +.IP "Problems of Inside-out" 4 +.IX Item "Problems of Inside-out" +.IP Solutions 4 +.IX Item "Solutions" +.IP "More Problems" 4 +.IX Item "More Problems" +.IP "The Generic Object" 4 +.IX Item "The Generic Object" +.IP "How to use Field Hashes" 4 +.IX Item "How to use Field Hashes" +.IP "Garbage-Collected Hashes" 4 +.IX Item "Garbage-Collected Hashes" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD +\&\f(CWinit()\fR, \f(CWfirst()\fR, \f(CWlast()\fR, \f(CWname()\fR, \f(CW\*(C`Name_hash\*(C'\fR, \f(CW\*(C`Name_id\*(C'\fR, +\&\f(CW\*(C`Name_idhash\*(C'\fR, \f(CW\*(C`Name_id_reg\*(C'\fR, \f(CW\*(C`Name_idhash_reg\*(C'\fR, \f(CW\*(C`Name_fieldhash\*(C'\fR +.RS 4 +.IP "Example 1" 4 +.IX Item "Example 1" +.PD 0 +.IP "Example 2" 4 +.IX Item "Example 2" +.RE +.RS 4 +.RE +.IP GUTS 4 +.IX Item "GUTS" +.RS 4 +.ie n .IP "The ""PERL_MAGIC_uvar"" interface for hashes" 4 +.el .IP "The \f(CWPERL_MAGIC_uvar\fR interface for hashes" 4 +.IX Item "The PERL_MAGIC_uvar interface for hashes" +.IP "Weakrefs call uvar magic" 4 +.IX Item "Weakrefs call uvar magic" +.IP "How field hashes work" 4 +.IX Item "How field hashes work" +.IP "Internal function Hash::Util::FieldHash::_fieldhash" 4 +.IX Item "Internal function Hash::Util::FieldHash::_fieldhash" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "I18N::Collate \- compare 8\-bit scalar data according to the current locale" +.IX Subsection "I18N::Collate - compare 8-bit scalar data according to the current locale" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "I18N::LangTags \- functions for dealing with RFC3066\-style language tags" +.IX Subsection "I18N::LangTags - functions for dealing with RFC3066-style language tags" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.PP +the function is_language_tag($lang1) +.PP +the function extract_language_tags($whatever) +.PP +the function same_language_tag($lang1, \f(CW$lang2\fR) +.PP +the function similarity_language_tag($lang1, \f(CW$lang2\fR) +.PP +the function is_dialect_of($lang1, \f(CW$lang2\fR) +.PP +the function super_languages($lang1) +.PP +the function locale2language_tag($locale_identifier) +.PP +the function encode_language_tag($lang1) +.PP +the function alternate_language_tags($lang1) +.PP +the function \f(CW@langs\fR = panic_languages(@accept_languages) +.PP +the function implicate_supers( ...languages... ), the function +implicate_supers_strictly( ...languages... ) +.IP "ABOUT LOWERCASING" 4 +.IX Item "ABOUT LOWERCASING" +.PD 0 +.IP "ABOUT UNICODE PLAINTEXT LANGUAGE TAGS" 4 +.IX Item "ABOUT UNICODE PLAINTEXT LANGUAGE TAGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "I18N::LangTags::Detect \- detect the user's language preferences" +.IX Subsection "I18N::LangTags::Detect - detect the user's language preferences" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "I18N::LangTags::List \-\- tags and names for human languages" +.IX Subsection "I18N::LangTags::List -- tags and names for human languages" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "ABOUT LANGUAGE TAGS" 4 +.IX Item "ABOUT LANGUAGE TAGS" +.IP "LIST OF LANGUAGES" 4 +.IX Item "LIST OF LANGUAGES" +.PD +{ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {ady} : +Adyghe, {aa} : Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : +Afro-Asiatic (Other)], {ak} : Akan, {akk} : Akkadian, {sq} : Albanian, +{ale} : Aleut, [{alg} : Algonquian languages], [{tut} : Altaic (Other)], +{am} : Amharic, {i\-ami} : Ami, [{apa} : Apache languages], {ar} : Arabic, +{arc} : Aramaic, {arp} : Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} +: Armenian, {an} : Aragonese, [{art} : Artificial (Other)], {ast} : +Asturian, {as} : Assamese, [{ath} : Athapascan languages], [{aus} : +Australian languages], [{map} : Austronesian (Other)], {av} : Avaric, {ae} +: Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, {ban} : +Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bm} : Bambara, [{bai} +: Bamileke languages], {bad} : Banda, [{bnt} : Bantu (Other)], {bas} : +Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak (Indonesia), {bej} : +Beja, {be} : Belarusian, {bem} : Bemba, {bn} : Bengali, [{ber} : Berber +(Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : Bikol, {bin} : Bini, +{bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : Breton, {bug} : +Buginese, {bg} : Bulgarian, {i\-bnn} : Bunun, {bua} : Buriat, {my} : +Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, [{cau} : Caucasian +(Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], [{cai} : Central +American Indian (Other)], {chg} : Chagatai, [{cmc} : Chamic languages], +{ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} : Cheyenne, {chb} +: Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : Chinook Jargon, {chp} : +Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, {chk} : Chuukese, {cv} : +Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : Corsican, {cr} : Cree, +{mus} : Creek, [{cpe} : English-based Creoles and pidgins (Other)], [{cpf} +: French-based Creoles and pidgins (Other)], [{cpp} : Portuguese-based +Creoles and pidgins (Other)], [{crp} : Creoles and pidgins (Other)], {hr} : +Croatian, [{cus} : Cushitic (Other)], {cs} : Czech, {dak} : Dakota, {da} : +Danish, {dar} : Dargwa, {day} : Dayak, {i\-default} : Default (Fallthru) +Language, {del} : Delaware, {din} : Dinka, {dv} : Divehi, {doi} : Dogri, +{dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : Dutch, +{dum} : Middle Dutch (ca.1050\-1350), {dyu} : Dyula, {dz} : Dzongkha, {efi} +: Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, {en} : +English, {enm} : Old English (1100\-1500), {ang} : Old English +(ca.450\-1100), {i\-enochian} : Enochian (Artificial), {myv} : Erzya, {eo} : +Esperanto, {et} : Estonian, {ee} : Ewe, {ewo} : Ewondo, {fan} : Fang, {fat} +: Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : Finnish, [{fiu} : +Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} : Middle French +(ca.1400\-1600), {fro} : Old French (842\-ca.1400), {fy} : Frisian, {fur} : +Friulian, {ff} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, {gl} : Gallegan, +{lg} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, {ka} : Georgian, +{de} : German, {gmh} : Middle High German (ca.1050\-1500), {goh} : Old High +German (ca.750\-1050), [{gem} : Germanic (Other)], {gil} : Gilbertese, {gon} +: Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : Grebo, {grc} : Ancient +Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : Gujarati, {gwi} : +Gwich'in, {hai} : Haida, {ht} : Haitian, {ha} : Hausa, {haw} : Hawaiian, +{he} : Hebrew, {hz} : Herero, {hil} : Hiligaynon, {him} : Himachali, {hi} : +Hindi, {ho} : Hiri Motu, {hit} : Hittite, {hmn} : Hmong, {hu} : Hungarian, +{hup} : Hupa, {iba} : Iban, {is} : Icelandic, {io} : Ido, {ig} : Igbo, +{ijo} : Ijo, {ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European +(Other)], {id} : Indonesian, {inh} : Ingush, {ia} : Interlingua +(International Auxiliary Language Association), {ie} : Interlingue, {iu} : +Inuktitut, {ik} : Inupiaq, [{ira} : Iranian (Other)], {ga} : Irish, {mga} : +Middle Irish (900\-1200), {sga} : Old Irish (to 900), [{iro} : Iroquoian +languages], {it} : Italian, {ja} : Japanese, {jv} : Javanese, {jrb} : +Judeo-Arabic, {jpr} : Judeo-Persian, {kbd} : Kabardian, {kab} : Kabyle, +{kac} : Kachin, {kl} : Kalaallisut, {xal} : Kalmyk, {kam} : Kamba, {kn} : +Kannada, {kr} : Kanuri, {krc} : Karachay-Balkar, {kaa} : Kara-Kalpak, {kar} +: Karen, {ks} : Kashmiri, {csb} : Kashubian, {kaw} : Kawi, {kk} : Kazakh, +{kha} : Khasi, {km} : Khmer, [{khi} : Khoisan (Other)], {kho} : Khotanese, +{ki} : Kikuyu, {kmb} : Kimbundu, {rw} : Kinyarwanda, {ky} : Kirghiz, +{i\-klingon} : Klingon, {kv} : Komi, {kg} : Kongo, {kok} : Konkani, {ko} : +Korean, {kos} : Kosraean, {kpe} : Kpelle, {kro} : Kru, {kj} : Kuanyama, +{kum} : Kumyk, {ku} : Kurdish, {kru} : Kurukh, {kut} : Kutenai, {lad} : +Ladino, {lah} : Lahnda, {lam} : Lamba, {lo} : Lao, {la} : Latin, {lv} : +Latvian, {lb} : Letzeburgesch, {lez} : Lezghian, {li} : Limburgish, {ln} : +Lingala, {lt} : Lithuanian, {nds} : Low German, {art\-lojban} : Lojban +(Artificial), {loz} : Lozi, {lu} : Luba-Katanga, {lua} : Luba-Lulua, {lui} +: Luiseno, {lun} : Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, +{mk} : Macedonian, {mad} : Madurese, {mag} : Magahi, {mai} : Maithili, +{mak} : Makasar, {mg} : Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : +Maltese, {mnc} : Manchu, {mdr} : Mandar, {man} : Mandingo, {mni} : +Manipuri, [{mno} : Manobo languages], {gv} : Manx, {mi} : Maori, {mr} : +Marathi, {chm} : Mari, {mh} : Marshall, {mwr} : Marwari, {mas} : Masai, +[{myn} : Mayan languages], {men} : Mende, {mic} : Micmac, {min} : +Minangkabau, {i\-mingo} : Mingo, [{mis} : Miscellaneous languages], {moh} : +Mohawk, {mdf} : Moksha, {mo} : Moldavian, [{mkh} : Mon-Khmer (Other)], +{lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} : Multiple +languages], [{mun} : Munda languages], {nah} : Nahuatl, {nap} : Neapolitan, +{na} : Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, +{ng} : Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : +Niger-Kordofanian (Other)], [{ssa} : Nilo-Saharan (Other)], {niu} : Niuean, +{nog} : Nogai, {non} : Old Norse, [{nai} : North American Indian], {no} : +Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} : +Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, {nzi} +: Nzima, {oc} : Occitan (post 1500), {oj} : Ojibwa, {or} : Oriya, {om} : +Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian +languages], {pal} : Pahlavi, {i\-pwn} : Paiwan, {pau} : Palauan, {pi} : +Pali, {pam} : Pampanga, {pag} : Pangasinan, {pa} : Panjabi, {pap} : +Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian +(ca.600\-400 B.C.), [{phi} : Philippine (Other)], {phn} : Phoenician, {pon} +: Pohnpeian, {pl} : Polish, {pt} : Portuguese, [{pra} : Prakrit languages], +{pro} : Old Provencal (to 1500), {ps} : Pushto, {qu} : Quechua, {rm} : +Raeto-Romance, {raj} : Rajasthani, {rap} : Rapanui, {rar} : Rarotongan, +[{qaa \- qtz} : Reserved for local use.], [{roa} : Romance (Other)], {ro} : +Romanian, {rom} : Romany, {rn} : Rundi, {ru} : Russian, [{sal} : Salishan +languages], {sam} : Samaritan Aramaic, {se} : Northern Sami, {sma} : +Southern Sami, {smn} : Inari Sami, {smj} : Lule Sami, {sms} : Skolt Sami, +[{smi} : Sami languages (Other)], {sm} : Samoan, {sad} : Sandawe, {sg} : +Sango, {sa} : Sanskrit, {sat} : Santali, {sc} : Sardinian, {sas} : Sasak, +{sco} : Scots, {sel} : Selkup, [{sem} : Semitic (Other)], {sr} : Serbian, +{srr} : Serer, {shn} : Shan, {sn} : Shona, {sid} : Sidamo, {sgn\-...} : Sign +Languages, {bla} : Siksika, {sd} : Sindhi, {si} : Sinhalese, [{sit} : +Sino-Tibetan (Other)], [{sio} : Siouan languages], {den} : Slave +(Athapascan), [{sla} : Slavic (Other)], {sk} : Slovak, {sl} : Slovenian, +{sog} : Sogdian, {so} : Somali, {son} : Songhai, {snk} : Soninke, {wen} : +Sorbian languages, {nso} : Northern Sotho, {st} : Southern Sotho, [{sai} : +South American Indian (Other)], {es} : Spanish, {suk} : Sukuma, {sux} : +Sumerian, {su} : Sundanese, {sus} : Susu, {sw} : Swahili, {ss} : Swati, +{sv} : Swedish, {syr} : Syriac, {tl} : Tagalog, {ty} : Tahitian, [{tai} : +Tai (Other)], {tg} : Tajik, {tmh} : Tamashek, {ta} : Tamil, {i\-tao} : Tao, +{tt} : Tatar, {i\-tay} : Tayal, {te} : Telugu, {ter} : Tereno, {tet} : +Tetum, {th} : Thai, {bo} : Tibetan, {tig} : Tigre, {ti} : Tigrinya, {tem} : +Timne, {tiv} : Tiv, {tli} : Tlingit, {tpi} : Tok Pisin, {tkl} : Tokelau, +{tog} : Tonga (Nyasa), {to} : Tonga (Tonga Islands), {tsi} : Tsimshian, +{ts} : Tsonga, {i\-tsu} : Tsou, {tn} : Tswana, {tum} : Tumbuka, [{tup} : +Tupi languages], {tr} : Turkish, {ota} : Ottoman Turkish (1500\-1928), {crh} +: Crimean Turkish, {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : +Twi, {udm} : Udmurt, {uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, +{umb} : Umbundu, {und} : Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : +Vai, {ve} : Venda, {vi} : Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} +: Wakashan languages], {wa} : Walloon, {wal} : Walamo, {war} : Waray, {was} +: Washo, {cy} : Welsh, {wo} : Wolof, {x\-...} : Unregistered (Semi-Private +Use), {xh} : Xhosa, {sah} : Yakut, {yao} : Yao, {yap} : Yapese, {ii} : +Sichuan Yi, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik languages], {znd} +: Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : Zhuang, {zu} : Zulu, +{zun} : Zuni +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP "COPYRIGHT AND DISCLAIMER" 4 +.IX Item "COPYRIGHT AND DISCLAIMER" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "I18N::Langinfo \- query locale information" +.IX Subsection "I18N::Langinfo - query locale information" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "For systems without ""nl_langinfo""" 4 +.el .IP "For systems without \f(CWnl_langinfo\fR" 4 +.IX Item "For systems without nl_langinfo" +.PD +\&\f(CW\*(C`ERA\*(C'\fR, \f(CW\*(C`CODESET\*(C'\fR, \f(CW\*(C`YESEXPR\*(C'\fR, \f(CW\*(C`YESSTR\*(C'\fR, \f(CW\*(C`NOEXPR\*(C'\fR, \f(CW\*(C`NOSTR\*(C'\fR, \f(CW\*(C`D_FMT\*(C'\fR, +\&\f(CW\*(C`T_FMT\*(C'\fR, \f(CW\*(C`D_T_FMT\*(C'\fR, \f(CW\*(C`CRNCYSTR\*(C'\fR, \f(CW\*(C`ALT_DIGITS\*(C'\fR, \f(CW\*(C`ERA_D_FMT\*(C'\fR, +\&\f(CW\*(C`ERA_T_FMT\*(C'\fR, \f(CW\*(C`ERA_D_T_FMT\*(C'\fR, \f(CW\*(C`T_FMT_AMPM\*(C'\fR +.IP EXPORT 4 +.IX Item "EXPORT" +.RE +.RS 4 +.RE +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO \- load various IO modules" +.IX Subsection "IO - load various IO modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP DEPRECATED 4 +.IX Item "DEPRECATED" +.PD +.SS "IO::Compress::Base \- Base Class for IO::Compress modules" +.IX Subsection "IO::Compress::Base - Base Class for IO::Compress modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::Bzip2 \- Write bzip2 files/buffers" +.IX Subsection "IO::Compress::Bzip2 - Write bzip2 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "bzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "bzip2 \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "bzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeIn => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A Buffer, A Filename, A +Filehandle, \f(CW\*(C`BlockSize100K => number\*(C'\fR, \f(CW\*(C`WorkFactor => number\*(C'\fR, +\&\f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP print 4 +.IX Item "print" +.IP printf 4 +.IX Item "printf" +.IP syswrite 4 +.IX Item "syswrite" +.IP write 4 +.IX Item "write" +.IP flush 4 +.IX Item "flush" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP newStream([OPTS]) 4 +.IX Item "newStream([OPTS])" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::Deflate \- Write RFC 1950 files/buffers" +.IX Subsection "IO::Compress::Deflate - Write RFC 1950 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "deflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "deflate \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "deflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeIn => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A Buffer, A Filename, A +Filehandle, \f(CW\*(C`Merge => 0|1\*(C'\fR, \-Level, \-Strategy, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP print 4 +.IX Item "print" +.IP printf 4 +.IX Item "printf" +.IP syswrite 4 +.IX Item "syswrite" +.IP write 4 +.IX Item "write" +.IP flush 4 +.IX Item "flush" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP newStream([OPTS]) 4 +.IX Item "newStream([OPTS])" +.IP deflateParams 4 +.IX Item "deflateParams" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all, :constants, :flush, :level, :strategy +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::FAQ \-\- Frequently Asked Questions about IO::Compress" +.IX Subsection "IO::Compress::FAQ -- Frequently Asked Questions about IO::Compress" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP GENERAL 4 +.IX Item "GENERAL" +.RS 4 +.IP "Compatibility with Unix compress/uncompress." 4 +.IX Item "Compatibility with Unix compress/uncompress." +.IP "Accessing .tar.Z files" 4 +.IX Item "Accessing .tar.Z files" +.IP "How do I recompress using a different compression?" 4 +.IX Item "How do I recompress using a different compression?" +.RE +.RS 4 +.RE +.IP ZIP 4 +.IX Item "ZIP" +.RS 4 +.IP "What Compression Types do IO::Compress::Zip & IO::Uncompress::Unzip support?" 4 +.IX Item "What Compression Types do IO::Compress::Zip & IO::Uncompress::Unzip support?" +.PD +Store (method 0), Deflate (method 8), Bzip2 (method 12), Lzma (method 14) +.IP "Can I Read/Write Zip files larger the 4 Gig?" 4 +.IX Item "Can I Read/Write Zip files larger the 4 Gig?" +.PD 0 +.IP "Can I write more that 64K entries is a Zip files?" 4 +.IX Item "Can I write more that 64K entries is a Zip files?" +.IP "Zip Resources" 4 +.IX Item "Zip Resources" +.RE +.RS 4 +.RE +.IP GZIP 4 +.IX Item "GZIP" +.RS 4 +.IP "Gzip Resources" 4 +.IX Item "Gzip Resources" +.IP "Dealing with concatenated gzip files" 4 +.IX Item "Dealing with concatenated gzip files" +.IP "Reading bgzip files with IO::Uncompress::Gunzip" 4 +.IX Item "Reading bgzip files with IO::Uncompress::Gunzip" +.RE +.RS 4 +.RE +.IP ZLIB 4 +.IX Item "ZLIB" +.RS 4 +.IP "Zlib Resources" 4 +.IX Item "Zlib Resources" +.RE +.RS 4 +.RE +.IP Bzip2 4 +.IX Item "Bzip2" +.RS 4 +.IP "Bzip2 Resources" 4 +.IX Item "Bzip2 Resources" +.IP "Dealing with Concatenated bzip2 files" 4 +.IX Item "Dealing with Concatenated bzip2 files" +.IP "Interoperating with Pbzip2" 4 +.IX Item "Interoperating with Pbzip2" +.RE +.RS 4 +.RE +.IP "HTTP & NETWORK" 4 +.IX Item "HTTP & NETWORK" +.RS 4 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Compressed files and Net::FTP" 4 +.IX Item "Compressed files and Net::FTP" +.RE +.RS 4 +.RE +.IP MISC 4 +.IX Item "MISC" +.RS 4 +.ie n .IP "Using ""InputLength"" to uncompress data embedded in a larger file/buffer." 4 +.el .IP "Using \f(CWInputLength\fR to uncompress data embedded in a larger file/buffer." 4 +.IX Item "Using InputLength to uncompress data embedded in a larger file/buffer." +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::Gzip \- Write RFC 1952 files/buffers" +.IX Subsection "IO::Compress::Gzip - Write RFC 1952 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "gzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "gzip \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "gzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeIn => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A Buffer, A Filename, A +Filehandle, \f(CW\*(C`Merge => 0|1\*(C'\fR, \-Level, \-Strategy, \f(CW\*(C`Minimal => 0|1\*(C'\fR, +\&\f(CW\*(C`Comment => $comment\*(C'\fR, \f(CW\*(C`Name => $string\*(C'\fR, \f(CW\*(C`Time => $number\*(C'\fR, +\&\f(CW\*(C`TextFlag => 0|1\*(C'\fR, \f(CW\*(C`HeaderCRC => 0|1\*(C'\fR, \f(CW\*(C`OS_Code => $value\*(C'\fR, +\&\f(CW\*(C`ExtraField => $data\*(C'\fR, \f(CW\*(C`ExtraFlags => $value\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP print 4 +.IX Item "print" +.IP printf 4 +.IX Item "printf" +.IP syswrite 4 +.IX Item "syswrite" +.IP write 4 +.IX Item "write" +.IP flush 4 +.IX Item "flush" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP newStream([OPTS]) 4 +.IX Item "newStream([OPTS])" +.IP deflateParams 4 +.IX Item "deflateParams" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all, :constants, :flush, :level, :strategy +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::RawDeflate \- Write RFC 1951 files/buffers" +.IX Subsection "IO::Compress::RawDeflate - Write RFC 1951 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "rawdeflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "rawdeflate \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "rawdeflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeIn => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A Buffer, A Filename, A +Filehandle, \f(CW\*(C`Merge => 0|1\*(C'\fR, \-Level, \-Strategy, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP print 4 +.IX Item "print" +.IP printf 4 +.IX Item "printf" +.IP syswrite 4 +.IX Item "syswrite" +.IP write 4 +.IX Item "write" +.IP flush 4 +.IX Item "flush" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP newStream([OPTS]) 4 +.IX Item "newStream([OPTS])" +.IP deflateParams 4 +.IX Item "deflateParams" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all, :constants, :flush, :level, :strategy +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Compress::Zip \- Write zip files/buffers" +.IX Subsection "IO::Compress::Zip - Write zip files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Store (0), Deflate (8), Bzip2 (12), Lzma (14), Zstandard (93), Xz (95) +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.PD 0 +.ie n .IP "zip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "zip \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "zip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, the full filename contained in +\&\f(CW$input_filename_or_reference\fR, the file protection attributes, the +UID/GID for the file, the file timestamps, A filename, A filehandle, A +scalar reference, An Array Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeIn => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A Buffer, A Filename, A +Filehandle, \f(CW\*(C`Name => $string\*(C'\fR, If the \f(CW$input\fR parameter is not a +filename, the \fIarchive member name\fR will be an empty string, \f(CW\*(C`CanonicalName => 0|1\*(C'\fR, \f(CW\*(C`FilterName => sub { ... }\*(C'\fR, \f(CW\*(C`Efs => 0|1\*(C'\fR, \f(CW\*(C`Minimal => 1|0\*(C'\fR, \f(CW\*(C`Stream => 0|1\*(C'\fR, \f(CW\*(C`Zip64 => 0|1\*(C'\fR, +\&\-Level, \-Strategy, \f(CW\*(C`BlockSize100K => number\*(C'\fR, \f(CW\*(C`WorkFactor => number\*(C'\fR, \f(CW\*(C`Preset => number\*(C'\fR, \f(CW\*(C`Extreme => 0|1\*(C'\fR, \f(CW\*(C`Time => $number\*(C'\fR, +\&\f(CW\*(C`ExtAttr => $attr\*(C'\fR, \f(CW\*(C`exTime => [$atime, $mtime, $ctime]\*(C'\fR, \f(CW\*(C`exUnix2 => [$uid, $gid]\*(C'\fR, \f(CW\*(C`exUnixN => [$uid, $gid]\*(C'\fR, \f(CWComment => +$comment\fR, \f(CW\*(C`ZipComment => $comment\*(C'\fR, \f(CW\*(C`Method => $method\*(C'\fR, \f(CW\*(C`TextFlag => 0|1\*(C'\fR, \f(CW\*(C`ExtraFieldLocal => $data\*(C'\fR, \f(CW\*(C`ExtraFieldCentral +=> $data\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP print 4 +.IX Item "print" +.IP printf 4 +.IX Item "printf" +.IP syswrite 4 +.IX Item "syswrite" +.IP write 4 +.IX Item "write" +.IP flush 4 +.IX Item "flush" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP newStream([OPTS]) 4 +.IX Item "newStream([OPTS])" +.IP deflateParams 4 +.IX Item "deflateParams" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all, :constants, :flush, :level, :strategy, :zip_method +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Apache::GZip Revisited" 4 +.IX Item "Apache::GZip Revisited" +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Dir \- supply object methods for directory handles" +.IX Subsection "IO::Dir - supply object methods for directory handles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), +rewind (), close (), tie \f(CW%hash\fR, 'IO::Dir', DIRNAME [, OPTIONS ] +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::File \- supply object methods for filehandles" +.IX Subsection "IO::File - supply object methods for filehandles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile +.IP METHODS 4 +.IX Item "METHODS" +open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS ), binmode( +[LAYER] ) +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "IO::Handle \- supply object methods for I/O handles" +.IX Subsection "IO::Handle - supply object methods for I/O handles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new (), new_from_fd ( FD, MODE ) +.IP METHODS 4 +.IX Item "METHODS" +\&\f(CW$io\fR\->fdopen ( FD, MODE ), \f(CW$io\fR\->opened, \f(CW$io\fR\->getline, \f(CW$io\fR\->getlines, +\&\f(CW$io\fR\->ungetc ( ORD ), \f(CW$io\fR\->write ( BUF, LEN [, OFFSET ] ), \f(CW$io\fR\->error, +\&\f(CW$io\fR\->clearerr, \f(CW$io\fR\->sync, \f(CW$io\fR\->flush, \f(CW$io\fR\->printflush ( ARGS ), +\&\f(CW$io\fR\->blocking ( [ BOOL ] ), \f(CW$io\fR\->untaint +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "IO::Pipe \- supply object methods for pipes" +.IX Subsection "IO::Pipe - supply object methods for pipes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( [READER, WRITER] ) +.IP METHODS 4 +.IX Item "METHODS" +reader ([ARGS]), writer ([ARGS]), handles () +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::Poll \- Object interface to system poll call" +.IX Subsection "IO::Poll - Object interface to system poll call" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( +IO ), handles( [ EVENT_MASK ] ) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::Seekable \- supply seek based methods for I/O objects" +.IX Subsection "IO::Seekable - supply seek based methods for I/O objects" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$io\fR\->getpos, \f(CW$io\fR\->setpos, \f(CW$io\fR\->seek ( POS, WHENCE ), WHENCE=0 (SEEK_SET), +WHENCE=1 (SEEK_CUR), WHENCE=2 (SEEK_END), \f(CW$io\fR\->sysseek( POS, WHENCE ), +\&\f(CW$io\fR\->tell +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "IO::Select \- OO interface to the select system call" +.IX Subsection "IO::Select - OO interface to the select system call" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( [ HANDLES ] ) +.IP METHODS 4 +.IX Item "METHODS" +add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( +[ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), +count (), \fBbits()\fR, select ( READ, WRITE, EXCEPTION [, TIMEOUT ] ) +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::Socket \- Object interface to socket communications" +.IX Subsection "IO::Socket - Object interface to socket communications" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CONSTRUCTOR ARGUMENTS" 4 +.IX Item "CONSTRUCTOR ARGUMENTS" +.RS 4 +.IP Blocking 4 +.IX Item "Blocking" +.IP Domain 4 +.IX Item "Domain" +.IP Listen 4 +.IX Item "Listen" +.IP Timeout 4 +.IX Item "Timeout" +.IP Type 4 +.IX Item "Type" +.RE +.RS 4 +.RE +.IP CONSTRUCTORS 4 +.IX Item "CONSTRUCTORS" +.RS 4 +.IP new 4 +.IX Item "new" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP accept 4 +.IX Item "accept" +.IP atmark 4 +.IX Item "atmark" +.IP autoflush 4 +.IX Item "autoflush" +.IP bind 4 +.IX Item "bind" +.IP connected 4 +.IX Item "connected" +.IP getsockopt 4 +.IX Item "getsockopt" +.IP listen 4 +.IX Item "listen" +.IP peername 4 +.IX Item "peername" +.IP protocol 4 +.IX Item "protocol" +.IP recv 4 +.IX Item "recv" +.IP send 4 +.IX Item "send" +.IP setsockopt 4 +.IX Item "setsockopt" +.IP shutdown 4 +.IX Item "shutdown" +.IP sockdomain 4 +.IX Item "sockdomain" +.IP socket 4 +.IX Item "socket" +.IP socketpair 4 +.IX Item "socketpair" +.IP sockname 4 +.IX Item "sockname" +.IP sockopt 4 +.IX Item "sockopt" +.IP socktype 4 +.IX Item "socktype" +.IP timeout 4 +.IX Item "timeout" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::Socket::INET \- Object interface for AF_INET domain sockets" +.IX Subsection "IO::Socket::INET - Object interface for AF_INET domain sockets" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( [ARGS] ) +.RS 4 +.IP METHODS 4 +.IX Item "METHODS" +sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost +() +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.ie n .SS "IO::Socket::IP, ""IO::Socket::IP"" \- Family-neutral IP socket supporting both IPv4 and IPv6" +.el .SS "IO::Socket::IP, \f(CWIO::Socket::IP\fP \- Family-neutral IP socket supporting both IPv4 and IPv6" +.IX Subsection "IO::Socket::IP, IO::Socket::IP - Family-neutral IP socket supporting both IPv4 and IPv6" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.ie n .IP "REPLACING ""IO::Socket"" DEFAULT BEHAVIOUR" 4 +.el .IP "REPLACING \f(CWIO::Socket\fR DEFAULT BEHAVIOUR" 4 +.IX Item "REPLACING IO::Socket DEFAULT BEHAVIOUR" +.IP CONSTRUCTORS 4 +.IX Item "CONSTRUCTORS" +.IP new 4 +.IX Item "new" +.PD +PeerHost => STRING, PeerService => STRING, PeerAddr => STRING, PeerPort => +STRING, PeerAddrInfo => ARRAY, LocalHost => STRING, LocalService => STRING, +LocalAddr => STRING, LocalPort => STRING, LocalAddrInfo => ARRAY, Family => +INT, Type => INT, Proto => STRING or INT, GetAddrInfoFlags => INT, Listen +=> INT, ReuseAddr => BOOL, ReusePort => BOOL, Broadcast => BOOL, Sockopts +=> ARRAY, V6Only => BOOL, MultiHomed, Blocking => BOOL, Timeout => NUM +.IP "new (one arg)" 4 +.IX Item "new (one arg)" +.PD 0 +.IP METHODS 4 +.IX Item "METHODS" +.IP sockhost_service 4 +.IX Item "sockhost_service" +.IP sockhost 4 +.IX Item "sockhost" +.IP sockport 4 +.IX Item "sockport" +.IP sockhostname 4 +.IX Item "sockhostname" +.IP sockservice 4 +.IX Item "sockservice" +.IP sockaddr 4 +.IX Item "sockaddr" +.IP peerhost_service 4 +.IX Item "peerhost_service" +.IP peerhost 4 +.IX Item "peerhost" +.IP peerport 4 +.IX Item "peerport" +.IP peerhostname 4 +.IX Item "peerhostname" +.IP peerservice 4 +.IX Item "peerservice" +.IP peeraddr 4 +.IX Item "peeraddr" +.IP as_inet 4 +.IX Item "as_inet" +.IP NON-BLOCKING 4 +.IX Item "NON-BLOCKING" +.ie n .IP """PeerHost"" AND ""LocalHost"" PARSING" 4 +.el .IP "\f(CWPeerHost\fR AND \f(CWLocalHost\fR PARSING" 4 +.IX Item "PeerHost AND LocalHost PARSING" +.RS 4 +.IP split_addr 4 +.IX Item "split_addr" +.RE +.RS 4 +.RE +.IP join_addr 4 +.IX Item "join_addr" +.ie n .IP """IO::Socket::INET"" INCOMPATIBILITES" 4 +.el .IP "\f(CWIO::Socket::INET\fR INCOMPATIBILITES" 4 +.IX Item "IO::Socket::INET INCOMPATIBILITES" +.IP TODO 4 +.IX Item "TODO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "IO::Socket::UNIX \- Object interface for AF_UNIX domain sockets" +.IX Subsection "IO::Socket::UNIX - Object interface for AF_UNIX domain sockets" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( [ARGS] ) +.IP METHODS 4 +.IX Item "METHODS" +\&\fBhostpath()\fR, \fBpeerpath()\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IO::Uncompress::AnyInflate \- Uncompress zlib-based (zip, gzip) file/buffer" +.IX Subsection "IO::Uncompress::AnyInflate - Uncompress zlib-based (zip, gzip) file/buffer" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +RFC 1950, RFC 1951 (optionally), gzip (RFC 1952), zip +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.PD 0 +.ie n .IP "anyinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "anyinflate \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "anyinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR, \f(CW\*(C`RawInflate => 0|1\*(C'\fR, \f(CW\*(C`ParseExtra => 0|1\*(C'\fR If the gzip FEXTRA header field is present and +this option is set, it will force the module to check that it conforms to +the sub-field structure as defined in RFC 1952 +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP inflateSync 4 +.IX Item "inflateSync" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::AnyUncompress \- Uncompress gzip, zip, bzip2, zstd, xz, lzma, lzip, lzf or lzop file/buffer" +.IX Subsection "IO::Uncompress::AnyUncompress - Uncompress gzip, zip, bzip2, zstd, xz, lzma, lzip, lzf or lzop file/buffer" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +RFC 1950, RFC 1951 (optionally), gzip (RFC 1952), zip, zstd (Zstandard), +bzip2, lzop, lzf, lzma, lzip, xz +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.PD 0 +.ie n .IP "anyuncompress $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "anyuncompress \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "anyuncompress $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR, \f(CW\*(C`RawInflate => 0|1\*(C'\fR, \f(CW\*(C`UnLzma => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::Base \- Base Class for IO::Uncompress modules" +.IX Subsection "IO::Uncompress::Base - Base Class for IO::Uncompress modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::Bunzip2 \- Read bzip2 files/buffers" +.IX Subsection "IO::Uncompress::Bunzip2 - Read bzip2 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "bunzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "bunzip2 \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "bunzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR, \f(CW\*(C`Small => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::Gunzip \- Read RFC 1952 files/buffers" +.IX Subsection "IO::Uncompress::Gunzip - Read RFC 1952 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "gunzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "gunzip \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "gunzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR, \f(CW\*(C`ParseExtra => 0|1\*(C'\fR If the gzip FEXTRA header field is present and this option is set, it +will force the module to check that it conforms to the sub-field structure +as defined in RFC 1952 +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP inflateSync 4 +.IX Item "inflateSync" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.PD +Name, Comment +.IP tell 4 +.IX Item "tell" +.PD 0 +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::Inflate \- Read RFC 1950 files/buffers" +.IX Subsection "IO::Uncompress::Inflate - Read RFC 1950 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "inflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "inflate \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "inflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP inflateSync 4 +.IX Item "inflateSync" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::RawInflate \- Read RFC 1951 files/buffers" +.IX Subsection "IO::Uncompress::RawInflate - Read RFC 1951 files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.ie n .IP "rawinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "rawinflate \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "rawinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CWInputLength => +$size\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP inflateSync 4 +.IX Item "inflateSync" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Uncompress::Unzip \- Read zip files/buffers" +.IX Subsection "IO::Uncompress::Unzip - Read zip files/buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Store (0), Deflate (8), Bzip2 (12), Lzma (14), Xz (95), Zstandard (93) +.IP "Functional Interface" 4 +.IX Item "Functional Interface" +.RS 4 +.PD 0 +.ie n .IP "unzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" 4 +.el .IP "unzip \f(CW$input_filename_or_reference\fR => \f(CW$output_filename_or_reference\fR [, OPTS]" 4 +.IX Item "unzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]" +.PD +A filename, A filehandle, A scalar reference, An array reference, An Input +FileGlob string, A filename, A filehandle, A scalar reference, An Array +Reference, An Output FileGlob +.IP Notes 4 +.IX Item "Notes" +.PD 0 +.IP "Optional Parameters" 4 +.IX Item "Optional Parameters" +.PD +\&\f(CW\*(C`AutoClose => 0|1\*(C'\fR, \f(CW\*(C`BinModeOut => 0|1\*(C'\fR, \f(CW\*(C`Append => 0|1\*(C'\fR, A +Buffer, A Filename, A Filehandle, \f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`TrailingData => $scalar\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP "OO Interface" 4 +.IX Item "OO Interface" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.PD +A filename, A filehandle, A scalar reference +.IP "Constructor Options" 4 +.IX Item "Constructor Options" +\&\f(CW\*(C`Name => "membername"\*(C'\fR, \f(CW\*(C`Efs => 0| 1\*(C'\fR, \f(CW\*(C`AutoClose => 0|1\*(C'\fR, +\&\f(CW\*(C`MultiStream => 0|1\*(C'\fR, \f(CW\*(C`Prime => $string\*(C'\fR, \f(CW\*(C`Transparent => 0|1\*(C'\fR, \f(CW\*(C`BlockSize => $num\*(C'\fR, \f(CW\*(C`InputLength => $size\*(C'\fR, \f(CW\*(C`Append => +0|1\*(C'\fR, \f(CW\*(C`Strict => 0|1\*(C'\fR +.IP Examples 4 +.IX Item "Examples" +.RE +.RS 4 +.RE +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.IP read 4 +.IX Item "read" +.IP read 4 +.IX Item "read" +.IP getline 4 +.IX Item "getline" +.IP getc 4 +.IX Item "getc" +.IP ungetc 4 +.IX Item "ungetc" +.IP inflateSync 4 +.IX Item "inflateSync" +.IP getHeaderInfo 4 +.IX Item "getHeaderInfo" +.IP tell 4 +.IX Item "tell" +.IP eof 4 +.IX Item "eof" +.IP seek 4 +.IX Item "seek" +.IP binmode 4 +.IX Item "binmode" +.IP opened 4 +.IX Item "opened" +.IP autoflush 4 +.IX Item "autoflush" +.IP input_line_number 4 +.IX Item "input_line_number" +.IP fileno 4 +.IX Item "fileno" +.IP close 4 +.IX Item "close" +.IP nextStream 4 +.IX Item "nextStream" +.IP trailingData 4 +.IX Item "trailingData" +.RE +.RS 4 +.RE +.IP Importing 4 +.IX Item "Importing" +.PD +:all +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Working with Net::FTP" 4 +.IX Item "Working with Net::FTP" +.IP "Walking through a zip file" 4 +.IX Item "Walking through a zip file" +.IP "Unzipping a complete zip file to disk" 4 +.IX Item "Unzipping a complete zip file to disk" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "MODIFICATION HISTORY" 4 +.IX Item "MODIFICATION HISTORY" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "IO::Zlib \- IO:: style interface to Compress::Zlib" +.IX Subsection "IO::Zlib - IO:: style interface to Compress::Zlib" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.PD +new ( [ARGS] ) +.IP "OBJECT METHODS" 4 +.IX Item "OBJECT METHODS" +open ( FILENAME, MODE ), opened, close, getc, getline, getlines, print ( +ARGS... ), read ( BUF, NBYTES, [OFFSET] ), eof, seek ( OFFSET, WHENCE ), +tell, setpos ( POS ), getpos ( POS ) +.IP "USING THE EXTERNAL GZIP" 4 +.IX Item "USING THE EXTERNAL GZIP" +.PD 0 +.IP "CLASS METHODS" 4 +.IX Item "CLASS METHODS" +.PD +has_Compress_Zlib, gzip_external, gzip_used, gzip_read_open, +gzip_write_open +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +IO::Zlib::getlines: must be called in list context, +IO::Zlib::gzopen_external: mode '...' is illegal, IO::Zlib::import: '...' +is illegal, IO::Zlib::import: ':gzip_external' requires an argument, +IO::Zlib::import: 'gzip_read_open' requires an argument, IO::Zlib::import: +\&'gzip_read' '...' is illegal, IO::Zlib::import: 'gzip_write_open' requires +an argument, IO::Zlib::import: 'gzip_write_open' '...' is illegal, +IO::Zlib::import: no Compress::Zlib and no external gzip, IO::Zlib::open: +needs a filename, IO::Zlib::READ: NBYTES must be specified, +IO::Zlib::WRITE: too long LENGTH +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IPC::Cmd \- finding and running system commands made easy" +.IX Subsection "IPC::Cmd - finding and running system commands made easy" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CLASS METHODS" 4 +.IX Item "CLASS METHODS" +.RS 4 +.ie n .IP "$ipc_run_version = IPC::Cmd\->can_use_ipc_run( [VERBOSE] )" 4 +.el .IP "\f(CW$ipc_run_version\fR = IPC::Cmd\->can_use_ipc_run( [VERBOSE] )" 4 +.IX Item "$ipc_run_version = IPC::Cmd->can_use_ipc_run( [VERBOSE] )" +.RE +.RS 4 +.RE +.ie n .IP "$ipc_open3_version = IPC::Cmd\->can_use_ipc_open3( [VERBOSE] )" 4 +.el .IP "\f(CW$ipc_open3_version\fR = IPC::Cmd\->can_use_ipc_open3( [VERBOSE] )" 4 +.IX Item "$ipc_open3_version = IPC::Cmd->can_use_ipc_open3( [VERBOSE] )" +.ie n .IP "$bool = IPC::Cmd\->can_capture_buffer" 4 +.el .IP "\f(CW$bool\fR = IPC::Cmd\->can_capture_buffer" 4 +.IX Item "$bool = IPC::Cmd->can_capture_buffer" +.ie n .IP "$bool = IPC::Cmd\->can_use_run_forked" 4 +.el .IP "\f(CW$bool\fR = IPC::Cmd\->can_use_run_forked" 4 +.IX Item "$bool = IPC::Cmd->can_use_run_forked" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.ie n .IP "$path = can_run( PROGRAM );" 4 +.el .IP "\f(CW$path\fR = can_run( PROGRAM );" 4 +.IX Item "$path = can_run( PROGRAM );" +.RE +.RS 4 +.RE +.ie n .IP "$ok | ($ok, $err, $full_buf, $stdout_buff, $stderr_buff) = run( command => COMMAND, [verbose => BOOL, buffer => \e$SCALAR, timeout => DIGIT] );" 4 +.el .IP "\f(CW$ok\fR | ($ok, \f(CW$err\fR, \f(CW$full_buf\fR, \f(CW$stdout_buff\fR, \f(CW$stderr_buff\fR) = run( command => COMMAND, [verbose => BOOL, buffer => \e$SCALAR, timeout => DIGIT] );" 4 +.IX Item "$ok | ($ok, $err, $full_buf, $stdout_buff, $stderr_buff) = run( command => COMMAND, [verbose => BOOL, buffer => $SCALAR, timeout => DIGIT] );" +.PD +command, verbose, buffer, timeout, success, error message, full_buffer, +out_buffer, error_buffer +.ie n .IP "$hashref = run_forked( COMMAND, { child_stdin => SCALAR, timeout => DIGIT, stdout_handler => CODEREF, stderr_handler => CODEREF} );" 4 +.el .IP "\f(CW$hashref\fR = run_forked( COMMAND, { child_stdin => SCALAR, timeout => DIGIT, stdout_handler => CODEREF, stderr_handler => CODEREF} );" 4 +.IX Item "$hashref = run_forked( COMMAND, { child_stdin => SCALAR, timeout => DIGIT, stdout_handler => CODEREF, stderr_handler => CODEREF} );" +\&\f(CW\*(C`timeout\*(C'\fR, \f(CW\*(C`child_stdin\*(C'\fR, \f(CW\*(C`stdout_handler\*(C'\fR, \f(CW\*(C`stderr_handler\*(C'\fR, +\&\f(CW\*(C`wait_loop_callback\*(C'\fR, \f(CW\*(C`discard_output\*(C'\fR, +\&\f(CW\*(C`terminate_on_parent_sudden_death\*(C'\fR, \f(CW\*(C`exit_code\*(C'\fR, \f(CW\*(C`timeout\*(C'\fR, \f(CW\*(C`stdout\*(C'\fR, +\&\f(CW\*(C`stderr\*(C'\fR, \f(CW\*(C`merged\*(C'\fR, \f(CW\*(C`err_msg\*(C'\fR +.ie n .IP "$q = QUOTE" 4 +.el .IP "\f(CW$q\fR = QUOTE" 4 +.IX Item "$q = QUOTE" +.PD 0 +.IP "HOW IT WORKS" 4 +.IX Item "HOW IT WORKS" +.IP "Global Variables" 4 +.IX Item "Global Variables" +.RS 4 +.ie n .IP $IPC::Cmd::VERBOSE 4 +.el .IP \f(CW$IPC::Cmd::VERBOSE\fR 4 +.IX Item "$IPC::Cmd::VERBOSE" +.ie n .IP $IPC::Cmd::USE_IPC_RUN 4 +.el .IP \f(CW$IPC::Cmd::USE_IPC_RUN\fR 4 +.IX Item "$IPC::Cmd::USE_IPC_RUN" +.ie n .IP $IPC::Cmd::USE_IPC_OPEN3 4 +.el .IP \f(CW$IPC::Cmd::USE_IPC_OPEN3\fR 4 +.IX Item "$IPC::Cmd::USE_IPC_OPEN3" +.ie n .IP $IPC::Cmd::WARN 4 +.el .IP \f(CW$IPC::Cmd::WARN\fR 4 +.IX Item "$IPC::Cmd::WARN" +.ie n .IP $IPC::Cmd::INSTANCES 4 +.el .IP \f(CW$IPC::Cmd::INSTANCES\fR 4 +.IX Item "$IPC::Cmd::INSTANCES" +.ie n .IP $IPC::Cmd::ALLOW_NULL_ARGS 4 +.el .IP \f(CW$IPC::Cmd::ALLOW_NULL_ARGS\fR 4 +.IX Item "$IPC::Cmd::ALLOW_NULL_ARGS" +.RE +.RS 4 +.RE +.IP Caveats 4 +.IX Item "Caveats" +.PD +Whitespace and IPC::Open3 / \fBsystem()\fR, Whitespace and IPC::Run, IO Redirect, +Interleaving STDOUT/STDERR +.IP "See Also" 4 +.IX Item "See Also" +.PD 0 +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IPC::Msg \- SysV Msg IPC object class" +.IX Subsection "IPC::Msg - SysV Msg IPC object class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set +( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, +FLAGS ] ), stat +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IPC::Open2 \- open a process for both reading and writing using \fBopen2()\fP" +.IX Subsection "IPC::Open2 - open a process for both reading and writing using open2()" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP WARNING 4 +.IX Item "WARNING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "IPC::Open3 \- open a process for reading, writing, and error handling using \fBopen3()\fP" +.IX Subsection "IPC::Open3 - open a process for reading, writing, and error handling using open3()" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "See Also" 4 +.IX Item "See Also" +.PD +IPC::Open2, IPC::Run +.IP WARNING 4 +.IX Item "WARNING" +.SS "IPC::Semaphore \- SysV Semaphore IPC object class" +.IX Subsection "IPC::Semaphore - SysV Semaphore IPC object class" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +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 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IPC::SharedMem \- SysV Shared Memory IPC object class" +.IX Subsection "IPC::SharedMem - SysV Shared Memory IPC object class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +new ( KEY , SIZE , FLAGS ), id, read ( POS, SIZE ), write ( STRING, POS, +SIZE ), remove, is_removed, stat, attach ( [FLAG] ), detach, addr +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "IPC::SysV \- System V IPC constants and system calls" +.IX Subsection "IPC::SysV - System V IPC constants and system calls" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +ftok( PATH ), ftok( PATH, ID ), shmat( ID, ADDR, FLAG ), shmdt( ADDR ), +memread( ADDR, VAR, POS, SIZE ), memwrite( ADDR, STRING, POS, SIZE ) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Internals \- Reserved special namespace for internals related functions" +.IX Subsection "Internals - Reserved special namespace for internals related functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +SvREFCNT(THING [, \f(CW$value\fR]), SvREADONLY(THING, [, \f(CW$value\fR]), +hv_clear_placeholders(%hash) +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "JSON::PP \- JSON::XS compatible pure-Perl module." +.IX Subsection "JSON::PP - JSON::XS compatible pure-Perl module." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FUNCTIONAL INTERFACE" 4 +.IX Item "FUNCTIONAL INTERFACE" +.RS 4 +.IP encode_json 4 +.IX Item "encode_json" +.IP decode_json 4 +.IX Item "decode_json" +.IP JSON::PP::is_bool 4 +.IX Item "JSON::PP::is_bool" +.RE +.RS 4 +.RE +.IP "OBJECT-ORIENTED INTERFACE" 4 +.IX Item "OBJECT-ORIENTED INTERFACE" +.RS 4 +.IP new 4 +.IX Item "new" +.IP ascii 4 +.IX Item "ascii" +.IP latin1 4 +.IX Item "latin1" +.IP utf8 4 +.IX Item "utf8" +.IP pretty 4 +.IX Item "pretty" +.IP indent 4 +.IX Item "indent" +.IP space_before 4 +.IX Item "space_before" +.IP space_after 4 +.IX Item "space_after" +.IP relaxed 4 +.IX Item "relaxed" +.PD +list items can have an end-comma, shell-style '#'\-comments, C\-style +multiple-line '/* */'\-comments (JSON::PP only), C++\-style one-line +\&'//'\-comments (JSON::PP only), literal ASCII TAB characters in strings +.IP canonical 4 +.IX Item "canonical" +.PD 0 +.IP allow_nonref 4 +.IX Item "allow_nonref" +.IP allow_unknown 4 +.IX Item "allow_unknown" +.IP allow_blessed 4 +.IX Item "allow_blessed" +.IP convert_blessed 4 +.IX Item "convert_blessed" +.IP allow_tags 4 +.IX Item "allow_tags" +.IP boolean_values 4 +.IX Item "boolean_values" +.IP core_bools 4 +.IX Item "core_bools" +.IP filter_json_object 4 +.IX Item "filter_json_object" +.IP filter_json_single_key_object 4 +.IX Item "filter_json_single_key_object" +.IP shrink 4 +.IX Item "shrink" +.IP max_depth 4 +.IX Item "max_depth" +.IP max_size 4 +.IX Item "max_size" +.IP encode 4 +.IX Item "encode" +.IP decode 4 +.IX Item "decode" +.IP decode_prefix 4 +.IX Item "decode_prefix" +.RE +.RS 4 +.RE +.IP "FLAGS FOR JSON::PP ONLY" 4 +.IX Item "FLAGS FOR JSON::PP ONLY" +.RS 4 +.IP allow_singlequote 4 +.IX Item "allow_singlequote" +.IP allow_barekey 4 +.IX Item "allow_barekey" +.IP allow_bignum 4 +.IX Item "allow_bignum" +.IP loose 4 +.IX Item "loose" +.IP escape_slash 4 +.IX Item "escape_slash" +.IP indent_length 4 +.IX Item "indent_length" +.IP sort_by 4 +.IX Item "sort_by" +.RE +.RS 4 +.RE +.IP "INCREMENTAL PARSING" 4 +.IX Item "INCREMENTAL PARSING" +.RS 4 +.IP incr_parse 4 +.IX Item "incr_parse" +.IP incr_text 4 +.IX Item "incr_text" +.IP incr_skip 4 +.IX Item "incr_skip" +.IP incr_reset 4 +.IX Item "incr_reset" +.RE +.RS 4 +.RE +.IP MAPPING 4 +.IX Item "MAPPING" +.RS 4 +.IP "JSON \-> PERL" 4 +.IX Item "JSON -> PERL" +.PD +object, array, string, number, true, false, null, shell-style comments (\f(CW\*(C`# \fR\f(CItext\fR\f(CW\*(C'\fR), tagged values (\f(CW\*(C`(\fR\f(CItag\fR\f(CW)\fR\f(CIvalue\fR\f(CW\*(C'\fR) +.IP "PERL \-> JSON" 4 +.IX Item "PERL -> JSON" +hash references, array references, other references, JSON::PP::true, +JSON::PP::false, JSON::PP::null, blessed objects, simple scalars +.IP "OBJECT SERIALISATION" 4 +.IX Item "OBJECT SERIALISATION" +1. \f(CW\*(C`allow_tags\*(C'\fR is enabled and the object has a \f(CW\*(C`FREEZE\*(C'\fR method, 2. +\&\f(CW\*(C`convert_blessed\*(C'\fR is enabled and the object has a \f(CW\*(C`TO_JSON\*(C'\fR method, 3. +\&\f(CW\*(C`allow_bignum\*(C'\fR is enabled and the object is a \f(CW\*(C`Math::BigInt\*(C'\fR or +\&\f(CW\*(C`Math::BigFloat\*(C'\fR, 4. \f(CW\*(C`allow_blessed\*(C'\fR is enabled, 5. none of the above +.RE +.RS 4 +.RE +.IP "ENCODING/CODESET FLAG NOTES" 4 +.IX Item "ENCODING/CODESET FLAG NOTES" +\&\f(CW\*(C`utf8\*(C'\fR flag disabled, \f(CW\*(C`utf8\*(C'\fR flag enabled, \f(CW\*(C`latin1\*(C'\fR or \f(CW\*(C`ascii\*(C'\fR flags +enabled +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "CURRENT MAINTAINER" 4 +.IX Item "CURRENT MAINTAINER" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "JSON::PP::Boolean \- dummy module providing JSON::PP::Boolean" +.IX Subsection "JSON::PP::Boolean - dummy module providing JSON::PP::Boolean" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "List::Util \- A selection of general-utility list subroutines" +.IX Subsection "List::Util - A selection of general-utility list subroutines" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "LIST-REDUCTION FUNCTIONS" 4 +.IX Item "LIST-REDUCTION FUNCTIONS" +.IP reduce 4 +.IX Item "reduce" +.IP reductions 4 +.IX Item "reductions" +.IP any 4 +.IX Item "any" +.IP all 4 +.IX Item "all" +.IP none 4 +.IX Item "none" +.IP notall 4 +.IX Item "notall" +.IP first 4 +.IX Item "first" +.IP max 4 +.IX Item "max" +.IP maxstr 4 +.IX Item "maxstr" +.IP min 4 +.IX Item "min" +.IP minstr 4 +.IX Item "minstr" +.IP product 4 +.IX Item "product" +.IP sum 4 +.IX Item "sum" +.IP sum0 4 +.IX Item "sum0" +.IP "KEY/VALUE PAIR LIST FUNCTIONS" 4 +.IX Item "KEY/VALUE PAIR LIST FUNCTIONS" +.IP pairs 4 +.IX Item "pairs" +.IP unpairs 4 +.IX Item "unpairs" +.IP pairkeys 4 +.IX Item "pairkeys" +.IP pairvalues 4 +.IX Item "pairvalues" +.IP pairgrep 4 +.IX Item "pairgrep" +.IP pairfirst 4 +.IX Item "pairfirst" +.IP pairmap 4 +.IX Item "pairmap" +.IP "OTHER FUNCTIONS" 4 +.IX Item "OTHER FUNCTIONS" +.IP shuffle 4 +.IX Item "shuffle" +.IP sample 4 +.IX Item "sample" +.IP uniq 4 +.IX Item "uniq" +.IP uniqint 4 +.IX Item "uniqint" +.IP uniqnum 4 +.IX Item "uniqnum" +.IP uniqstr 4 +.IX Item "uniqstr" +.IP head 4 +.IX Item "head" +.IP tail 4 +.IX Item "tail" +.IP zip 4 +.IX Item "zip" +.IP mesh 4 +.IX Item "mesh" +.IP "CONFIGURATION VARIABLES" 4 +.IX Item "CONFIGURATION VARIABLES" +.RS 4 +.ie n .IP $RAND 4 +.el .IP \f(CW$RAND\fR 4 +.IX Item "$RAND" +.RE +.RS 4 +.RE +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.RS 4 +.IP "RT #95409" 4 +.IX Item "RT #95409" +.IP "\fBuniqnum()\fR on oversized bignums" 4 +.IX Item "uniqnum() on oversized bignums" +.RE +.RS 4 +.RE +.IP "SUGGESTED ADDITIONS" 4 +.IX Item "SUGGESTED ADDITIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "List::Util::XS \- Indicate if List::Util was compiled with a C compiler" +.IX Subsection "List::Util::XS - Indicate if List::Util was compiled with a C compiler" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Locale::Maketext \- framework for localization" +.IX Subsection "Locale::Maketext - framework for localization" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "QUICK OVERVIEW" 4 +.IX Item "QUICK OVERVIEW" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Construction Methods" 4 +.IX Item "Construction Methods" +.IP "The ""maketext"" Method" 4 +.IX Item "The ""maketext"" Method" +.PD +\&\f(CW$lh\fR\->fail_with \fIor\fR \f(CW$lh\fR\->fail_with(\fIPARAM\fR), \f(CW$lh\fR\->failure_handler_auto, +\&\f(CW$lh\fR\->denylist(@list) <or> \f(CW$lh\fR\->blacklist(@list), \f(CW$lh\fR\->allowlist(@list) <or> +\&\f(CW$lh\fR\->whitelist(@list) +.IP "Utility Methods" 4 +.IX Item "Utility Methods" +\&\f(CW$language\fR\->quant($number, \f(CW$singular\fR), \f(CW$language\fR\->quant($number, \f(CW$singular\fR, +\&\f(CW$plural\fR), \f(CW$language\fR\->quant($number, \f(CW$singular\fR, \f(CW$plural\fR, \f(CW$negative\fR), +\&\f(CW$language\fR\->numf($number), \f(CW$language\fR\->numerate($number, \f(CW$singular\fR, \f(CW$plural\fR, +\&\f(CW$negative\fR), \f(CW$language\fR\->sprintf($format, \f(CW@items\fR), \f(CW$language\fR\->\fBlanguage_tag()\fR, +\&\f(CW$language\fR\->\fBencoding()\fR +.IP "Language Handle Attributes and Internals" 4 +.IX Item "Language Handle Attributes and Internals" +.RE +.RS 4 +.RE +.PD 0 +.IP "LANGUAGE CLASS HIERARCHIES" 4 +.IX Item "LANGUAGE CLASS HIERARCHIES" +.IP "ENTRIES IN EACH LEXICON" 4 +.IX Item "ENTRIES IN EACH LEXICON" +.IP "BRACKET NOTATION" 4 +.IX Item "BRACKET NOTATION" +.IP "BRACKET NOTATION SECURITY" 4 +.IX Item "BRACKET NOTATION SECURITY" +.IP "AUTO LEXICONS" 4 +.IX Item "AUTO LEXICONS" +.IP "READONLY LEXICONS" 4 +.IX Item "READONLY LEXICONS" +.IP "CONTROLLING LOOKUP FAILURE" 4 +.IX Item "CONTROLLING LOOKUP FAILURE" +.IP "HOW TO USE MAKETEXT" 4 +.IX Item "HOW TO USE MAKETEXT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMER" 4 +.IX Item "COPYRIGHT AND DISCLAIMER" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Locale::Maketext::Cookbook \- recipes for using Locale::Maketext" +.IX Subsection "Locale::Maketext::Cookbook - recipes for using Locale::Maketext" +.IP INTRODUCTION 4 +.IX Item "INTRODUCTION" +.PD 0 +.IP "ONESIDED LEXICONS" 4 +.IX Item "ONESIDED LEXICONS" +.IP "DECIMAL PLACES IN NUMBER FORMATTING" 4 +.IX Item "DECIMAL PLACES IN NUMBER FORMATTING" +.PD +.SS "Locale::Maketext::Guts \- Deprecated module to load Locale::Maketext utf8 code" +.IX Subsection "Locale::Maketext::Guts - Deprecated module to load Locale::Maketext utf8 code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Locale::Maketext::GutsLoader \- Deprecated module to load Locale::Maketext utf8 code" +.IX Subsection "Locale::Maketext::GutsLoader - Deprecated module to load Locale::Maketext utf8 code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Locale::Maketext::Simple \- Simple interface to Locale::Maketext::Lexicon" +.IX Subsection "Locale::Maketext::Simple - Simple interface to Locale::Maketext::Lexicon" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RS 4 +.IP Class 4 +.IX Item "Class" +.IP Path 4 +.IX Item "Path" +.IP Style 4 +.IX Item "Style" +.IP Export 4 +.IX Item "Export" +.IP Subclass 4 +.IX Item "Subclass" +.IP Decode 4 +.IX Item "Decode" +.IP Encoding 4 +.IX Item "Encoding" +.RE +.RS 4 +.RE +.IP ACKNOWLEDGMENTS 4 +.IX Item "ACKNOWLEDGMENTS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.RS 4 +.IP "The ""MIT"" License" 4 +.IX Item "The ""MIT"" License" +.RE +.RS 4 +.RE +.PD +.SS "Locale::Maketext::TPJ13 \-\- article about software localization" +.IX Subsection "Locale::Maketext::TPJ13 -- article about software localization" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Localization and Perl: gettext breaks, Maketext fixes" 4 +.IX Item "Localization and Perl: gettext breaks, Maketext fixes" +.RS 4 +.IP "A Localization Horror Story: It Could Happen To You" 4 +.IX Item "A Localization Horror Story: It Could Happen To You" +.IP "The Linguistic View" 4 +.IX Item "The Linguistic View" +.IP "Breaking gettext" 4 +.IX Item "Breaking gettext" +.IP "Replacing gettext" 4 +.IX Item "Replacing gettext" +.IP "Buzzwords: Abstraction and Encapsulation" 4 +.IX Item "Buzzwords: Abstraction and Encapsulation" +.IP "Buzzword: Isomorphism" 4 +.IX Item "Buzzword: Isomorphism" +.IP "Buzzword: Inheritance" 4 +.IX Item "Buzzword: Inheritance" +.IP "Buzzword: Concision" 4 +.IX Item "Buzzword: Concision" +.IP "The Devil in the Details" 4 +.IX Item "The Devil in the Details" +.IP "The Proof in the Pudding: Localizing Web Sites" 4 +.IX Item "The Proof in the Pudding: Localizing Web Sites" +.IP References 4 +.IX Item "References" +.RE +.RS 4 +.RE +.PD +.SS "MIME::Base64 \- Encoding and decoding of base64 strings" +.IX Subsection "MIME::Base64 - Encoding and decoding of base64 strings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +encode_base64( \f(CW$bytes\fR ), encode_base64( \f(CW$bytes\fR, \f(CW$eol\fR );, decode_base64( +\&\f(CW$str\fR ), encode_base64url( \f(CW$bytes\fR ), decode_base64url( \f(CW$str\fR ), +encoded_base64_length( \f(CW$bytes\fR ), encoded_base64_length( \f(CW$bytes\fR, \f(CW$eol\fR ), +decoded_base64_length( \f(CW$str\fR ) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "MIME::QuotedPrint \- Encoding and decoding of quoted-printable strings" +.IX Subsection "MIME::QuotedPrint - Encoding and decoding of quoted-printable strings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +encode_qp( \f(CW$str\fR), encode_qp( \f(CW$str\fR, \f(CW$eol\fR), encode_qp( \f(CW$str\fR, \f(CW$eol\fR, \f(CW$binmode\fR +), decode_qp( \f(CW$str\fR ) +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Math::BigFloat \- arbitrary size floating point math package" +.IX Subsection "Math::BigFloat - arbitrary size floating point math package" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Input 4 +.IX Item "Input" +.IP Output 4 +.IX Item "Output" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Configuration methods" 4 +.IX Item "Configuration methods" +.PD +\&\fBaccuracy()\fR, \fBprecision()\fR +.IP "Constructor methods" 4 +.IX Item "Constructor methods" +\&\fBfrom_hex()\fR, \fBfrom_oct()\fR, \fBfrom_bin()\fR, \fBfrom_ieee754()\fR, \fBbpi()\fR +.IP "Arithmetic methods" 4 +.IX Item "Arithmetic methods" +\&\fBbmuladd()\fR, \fBbdiv()\fR, \fBbmod()\fR, \fBbexp()\fR, \fBbnok()\fR, \fBbsin()\fR, \fBbcos()\fR, \fBbatan()\fR, +\&\fBbatan2()\fR, \fBas_float()\fR, \fBto_ieee754()\fR +.IP "ACCURACY AND PRECISION" 4 +.IX Item "ACCURACY AND PRECISION" +.PD 0 +.IP Rounding 4 +.IX Item "Rounding" +.PD +bfround ( +$scale ), bfround ( \-$scale ), bfround ( 0 ), bround ( +$scale +), bround ( \-$scale ) and bround ( 0 ) +.RE +.RS 4 +.RE +.IP "NUMERIC LITERALS" 4 +.IX Item "NUMERIC LITERALS" +.RS 4 +.PD 0 +.IP "Hexadecimal, octal, and binary floating point literals" 4 +.IX Item "Hexadecimal, octal, and binary floating point literals" +.IP "Math library" 4 +.IX Item "Math library" +.IP "Using Math::BigInt::Lite" 4 +.IX Item "Using Math::BigInt::Lite" +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +stringify, \fBbstr()\fR, \fBbrsft()\fR, Modifying and =, \fBprecision()\fR vs. \fBaccuracy()\fR +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings, The Bignum mailing list, Post to mailing list, View mailing list, +Subscribe/Unsubscribe +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "Math::BigInt \- arbitrary size integer math package" +.IX Subsection "Math::BigInt - arbitrary size integer math package" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Input 4 +.IX Item "Input" +.IP Output 4 +.IX Item "Output" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Configuration methods" 4 +.IX Item "Configuration methods" +.PD +\&\fBaccuracy()\fR, \fBprecision()\fR, \fBdiv_scale()\fR, \fBround_mode()\fR, \fBupgrade()\fR, \fBdowngrade()\fR, +\&\fBmodify()\fR, \fBconfig()\fR +.IP "Constructor methods" 4 +.IX Item "Constructor methods" +\&\fBnew()\fR, \fBfrom_dec()\fR, \fBfrom_hex()\fR, \fBfrom_oct()\fR, \fBfrom_bin()\fR, \fBfrom_bytes()\fR, +\&\fBfrom_base()\fR, \fBfrom_base_num()\fR, \fBbzero()\fR, \fBbone()\fR, \fBbinf()\fR, \fBbnan()\fR, \fBbpi()\fR, +\&\fBcopy()\fR, \fBas_int()\fR, \fBas_number()\fR, \fBas_float()\fR, \fBas_rat()\fR +.IP "Boolean methods" 4 +.IX Item "Boolean methods" +\&\fBis_zero()\fR, is_one( [ SIGN ]), \fBis_finite()\fR, is_inf( [ SIGN ] ), \fBis_nan()\fR, +\&\fBis_positive()\fR, \fBis_pos()\fR, \fBis_negative()\fR, \fBis_neg()\fR, \fBis_non_positive()\fR, +\&\fBis_non_negative()\fR, \fBis_odd()\fR, \fBis_even()\fR, \fBis_int()\fR +.IP "Comparison methods" 4 +.IX Item "Comparison methods" +\&\fBbcmp()\fR, \fBbacmp()\fR, \fBbeq()\fR, \fBbne()\fR, \fBblt()\fR, \fBble()\fR, \fBbgt()\fR, \fBbge()\fR +.IP "Arithmetic methods" 4 +.IX Item "Arithmetic methods" +\&\fBbneg()\fR, \fBbabs()\fR, \fBbsgn()\fR, \fBbnorm()\fR, \fBbinc()\fR, \fBbdec()\fR, \fBbadd()\fR, \fBbsub()\fR, \fBbmul()\fR, +\&\fBbmuladd()\fR, \fBbdiv()\fR, \fBbtdiv()\fR, \fBbmod()\fR, \fBbtmod()\fR, \fBbmodinv()\fR, \fBbmodpow()\fR, \fBbpow()\fR, +\&\fBblog()\fR, \fBbexp()\fR, \fBbnok()\fR, \fBbuparrow()\fR, \fBuparrow()\fR, \fBbackermann()\fR, \fBackermann()\fR, +\&\fBbsin()\fR, \fBbcos()\fR, \fBbatan()\fR, \fBbatan2()\fR, \fBbsqrt()\fR, \fBbroot()\fR, \fBbfac()\fR, \fBbdfac()\fR, +\&\fBbtfac()\fR, \fBbmfac()\fR, \fBbfib()\fR, \fBblucas()\fR, \fBbrsft()\fR, \fBblsft()\fR +.IP "Bitwise methods" 4 +.IX Item "Bitwise methods" +\&\fBband()\fR, \fBbior()\fR, \fBbxor()\fR, \fBbnot()\fR +.IP "Rounding methods" 4 +.IX Item "Rounding methods" +\&\fBround()\fR, \fBbround()\fR, \fBbfround()\fR, \fBbfloor()\fR, \fBbceil()\fR, \fBbint()\fR +.IP "Other mathematical methods" 4 +.IX Item "Other mathematical methods" +\&\fBbgcd()\fR, \fBblcm()\fR +.IP "Object property methods" 4 +.IX Item "Object property methods" +\&\fBsign()\fR, \fBdigit()\fR, \fBdigitsum()\fR, \fBbdigitsum()\fR, \fBlength()\fR, \fBmantissa()\fR, \fBexponent()\fR, +\&\fBparts()\fR, \fBsparts()\fR, \fBnparts()\fR, \fBeparts()\fR, \fBdparts()\fR, \fBfparts()\fR, \fBnumerator()\fR, +\&\fBdenominator()\fR +.IP "String conversion methods" 4 +.IX Item "String conversion methods" +\&\fBbstr()\fR, \fBbsstr()\fR, \fBbnstr()\fR, \fBbestr()\fR, \fBbdstr()\fR, \fBbfstr()\fR, \fBto_hex()\fR, \fBto_bin()\fR, +\&\fBto_oct()\fR, \fBto_bytes()\fR, \fBto_base()\fR, \fBto_base_num()\fR, \fBas_hex()\fR, \fBas_bin()\fR, +\&\fBas_oct()\fR, \fBas_bytes()\fR +.IP "Other conversion methods" 4 +.IX Item "Other conversion methods" +\&\fBnumify()\fR +.IP "Utility methods" 4 +.IX Item "Utility methods" +\&\fBdec_str_to_dec_flt_str()\fR, \fBhex_str_to_dec_flt_str()\fR, +\&\fBoct_str_to_dec_flt_str()\fR, \fBbin_str_to_dec_flt_str()\fR, \fBdec_str_to_dec_str()\fR, +\&\fBhex_str_to_dec_str()\fR, \fBoct_str_to_dec_str()\fR, \fBbin_str_to_dec_str()\fR +.RE +.RS 4 +.RE +.IP "ACCURACY and PRECISION" 4 +.IX Item "ACCURACY and PRECISION" +.RS 4 +.PD 0 +.IP "Precision P" 4 +.IX Item "Precision P" +.IP "Accuracy A" 4 +.IX Item "Accuracy A" +.IP "Fallback F" 4 +.IX Item "Fallback F" +.IP "Rounding mode R" 4 +.IX Item "Rounding mode R" +.PD +\&'trunc', 'even', 'odd', '+inf', '\-inf', 'zero', 'common', Precision, +Accuracy (significant digits), Setting/Accessing, Creating numbers, Usage, +Precedence, Overriding globals, Local settings, Rounding, Default values, +Remarks +.RE +.RS 4 +.RE +.IP "Infinity and Not a Number" 4 +.IX Item "Infinity and Not a Number" +\&\fBoct()\fR/\fBhex()\fR +.IP INTERNALS 4 +.IX Item "INTERNALS" +.RS 4 +.PD 0 +.IP "MATH LIBRARY" 4 +.IX Item "MATH LIBRARY" +.IP SIGN 4 +.IX Item "SIGN" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP "NUMERIC LITERALS" 4 +.IX Item "NUMERIC LITERALS" +.RS 4 +.IP "Hexadecimal, octal, and binary floating point literals" 4 +.IX Item "Hexadecimal, octal, and binary floating point literals" +.RE +.RS 4 +.RE +.IP PERFORMANCE 4 +.IX Item "PERFORMANCE" +.RS 4 +.IP "Alternative math libraries" 4 +.IX Item "Alternative math libraries" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP "Subclassing Math::BigInt" 4 +.IX Item "Subclassing Math::BigInt" +.RE +.RS 4 +.RE +.IP UPGRADING 4 +.IX Item "UPGRADING" +.RS 4 +.IP Auto-upgrade 4 +.IX Item "Auto-upgrade" +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +Comparing numbers as strings, \fBint()\fR, Modifying and =, Overloading \-$x, +Mixing different object types +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings, The Bignum mailing list, Post to mailing list, View mailing list, +Subscribe/Unsubscribe +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "Math::BigInt::Calc \- pure Perl module to support Math::BigInt" +.IX Subsection "Math::BigInt::Calc - pure Perl module to support Math::BigInt" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.PD +base_len, use_int +.IP METHODS 4 +.IX Item "METHODS" +\&\fB_base_len()\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "Math::BigInt::FastCalc \- Math::BigInt::Calc with some XS for more speed" +.IX Subsection "Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP STORAGE 4 +.IX Item "STORAGE" +.IP METHODS 4 +.IX Item "METHODS" +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Math::BigInt::Lib \- virtual parent class for Math::BigInt libraries" +.IX Subsection "Math::BigInt::Lib - virtual parent class for Math::BigInt libraries" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "General Notes" 4 +.IX Item "General Notes" +.PD +CLASS\->\fBapi_version()\fR, CLASS\->_new(STR), CLASS\->\fB_zero()\fR, +CLASS\->\fB_one()\fR, CLASS\->\fB_two()\fR, CLASS\->\fB_ten()\fR, +CLASS\->_from_bin(STR), CLASS\->_from_oct(STR), +CLASS\->_from_hex(STR), CLASS\->_from_bytes(STR), +CLASS\->_from_base(STR, BASE, COLLSEQ), CLASS\->_from_base_num(ARRAY, +BASE), CLASS\->_add(OBJ1, OBJ2), CLASS\->_mul(OBJ1, OBJ2), +CLASS\->_div(OBJ1, OBJ2), CLASS\->_sub(OBJ1, OBJ2, FLAG), +CLASS\->_sub(OBJ1, OBJ2), CLASS\->_sadd(OBJ1, SIGN1, OBJ2, SIGN2), +CLASS\->_ssub(OBJ1, SIGN1, OBJ2, SIGN2), CLASS\->_dec(OBJ), +CLASS\->_inc(OBJ), CLASS\->_mod(OBJ1, OBJ2), CLASS\->_sqrt(OBJ), +CLASS\->_root(OBJ, N), CLASS\->_fac(OBJ), CLASS\->_dfac(OBJ), +CLASS\->_pow(OBJ1, OBJ2), CLASS\->_modinv(OBJ1, OBJ2), +CLASS\->_modpow(OBJ1, OBJ2, OBJ3), CLASS\->_rsft(OBJ, N, B), +CLASS\->_lsft(OBJ, N, B), CLASS\->_log_int(OBJ, B), +CLASS\->_gcd(OBJ1, OBJ2), CLASS\->_lcm(OBJ1, OBJ2), +CLASS\->_fib(OBJ), CLASS\->_lucas(OBJ), CLASS\->_and(OBJ1, OBJ2), +CLASS\->_or(OBJ1, OBJ2), CLASS\->_xor(OBJ1, OBJ2), +CLASS\->_sand(OBJ1, OBJ2, SIGN1, SIGN2), CLASS\->_sor(OBJ1, OBJ2, +SIGN1, SIGN2), CLASS\->_sxor(OBJ1, OBJ2, SIGN1, SIGN2), +CLASS\->_is_zero(OBJ), CLASS\->_is_one(OBJ), CLASS\->_is_two(OBJ), +CLASS\->_is_ten(OBJ), CLASS\->_is_even(OBJ), CLASS\->_is_odd(OBJ), +CLASS\->_acmp(OBJ1, OBJ2), CLASS\->_str(OBJ), +CLASS\->_to_bin(OBJ), CLASS\->_to_oct(OBJ), CLASS\->_to_hex(OBJ), +CLASS\->_to_bytes(OBJ), CLASS\->_to_base(OBJ, BASE, COLLSEQ), +CLASS\->_to_base_num(OBJ, BASE), CLASS\->_as_bin(OBJ), +CLASS\->_as_oct(OBJ), CLASS\->_as_hex(OBJ), +CLASS\->_as_bytes(OBJ), CLASS\->_num(OBJ), CLASS\->_copy(OBJ), +CLASS\->_len(OBJ), CLASS\->_zeros(OBJ), CLASS\->_digit(OBJ, N), +CLASS\->_digitsum(OBJ), CLASS\->_check(OBJ), CLASS\->_set(OBJ) +.IP "API version 2" 4 +.IX Item "API version 2" +CLASS\->_1ex(N), CLASS\->_nok(OBJ1, OBJ2), CLASS\->_alen(OBJ) +.RE +.RS 4 +.RE +.IP "WRAP YOUR OWN" 4 +.IX Item "WRAP YOUR OWN" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +RT: CPAN's request tracker, AnnoCPAN: Annotated CPAN documentation, CPAN +Ratings, MetaCPAN, CPAN Testers Matrix, The Bignum mailing list, Post to +mailing list, View mailing list, Subscribe/Unsubscribe +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Math::BigRat \- arbitrary size rational number math package" +.IX Subsection "Math::BigRat - arbitrary size rational number math package" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "MATH LIBRARY" 4 +.IX Item "MATH LIBRARY" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\fBnew()\fR, \fBnumerator()\fR, \fBdenominator()\fR, \fBparts()\fR, \fBdparts()\fR, \fBfparts()\fR, \fBnumify()\fR, +\&\fBas_int()\fR, \fBas_number()\fR, \fBas_float()\fR, \fBas_hex()\fR, \fBas_bin()\fR, \fBas_oct()\fR, +\&\fBfrom_hex()\fR, \fBfrom_oct()\fR, \fBfrom_bin()\fR, \fBbnan()\fR, \fBbzero()\fR, \fBbinf()\fR, \fBbone()\fR, +\&\fBlength()\fR, \fBdigit()\fR, \fBbnorm()\fR, \fBbfac()\fR, \fBbround()\fR/\fBround()\fR/\fBbfround()\fR, \fBbmod()\fR, +\&\fBbmodinv()\fR, \fBbmodpow()\fR, \fBbneg()\fR, \fBis_one()\fR, \fBis_zero()\fR, \fBis_pos()\fR/\fBis_positive()\fR, +\&\fBis_neg()\fR/\fBis_negative()\fR, \fBis_int()\fR, \fBis_odd()\fR, \fBis_even()\fR, \fBbceil()\fR, \fBbfloor()\fR, +\&\fBbint()\fR, \fBbsqrt()\fR, \fBbroot()\fR, \fBbadd()\fR, \fBbmul()\fR, \fBbsub()\fR, \fBbdiv()\fR, \fBbinv()\fR, \fBbdec()\fR, +\&\fBbinc()\fR, \fBcopy()\fR, \fBbstr()\fR/\fBbsstr()\fR, \fBbcmp()\fR, \fBbacmp()\fR, \fBbeq()\fR, \fBbne()\fR, \fBblt()\fR, +\&\fBble()\fR, \fBbgt()\fR, \fBbge()\fR, \fBblsft()\fR/\fBbrsft()\fR, \fBband()\fR, \fBbior()\fR, \fBbxor()\fR, \fBbnot()\fR, +\&\fBbpow()\fR, \fBblog()\fR, \fBbexp()\fR, \fBbnok()\fR, \fBconfig()\fR +.IP "NUMERIC LITERALS" 4 +.IX Item "NUMERIC LITERALS" +.RS 4 +.PD 0 +.IP "Hexadecimal, octal, and binary floating point literals" 4 +.IX Item "Hexadecimal, octal, and binary floating point literals" +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN +Ratings +.IP LICENSE 4 +.IX Item "LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "Math::Complex \- complex numbers and associated mathematical functions" +.IX Subsection "Math::Complex - complex numbers and associated mathematical functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OPERATIONS 4 +.IX Item "OPERATIONS" +.IP CREATION 4 +.IX Item "CREATION" +.IP DISPLAYING 4 +.IX Item "DISPLAYING" +.RS 4 +.IP "CHANGED IN PERL 5.6" 4 +.IX Item "CHANGED IN PERL 5.6" +.RE +.RS 4 +.RE +.IP USAGE 4 +.IX Item "USAGE" +.IP CONSTANTS 4 +.IX Item "CONSTANTS" +.RS 4 +.IP PI 4 +.IX Item "PI" +.IP Inf 4 +.IX Item "Inf" +.RE +.RS 4 +.RE +.IP "ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO" 4 +.IX Item "ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO" +.IP "ERRORS DUE TO INDIGESTIBLE ARGUMENTS" 4 +.IX Item "ERRORS DUE TO INDIGESTIBLE ARGUMENTS" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Math::Trig \- trigonometric functions" +.IX Subsection "Math::Trig - trigonometric functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "TRIGONOMETRIC FUNCTIONS" 4 +.IX Item "TRIGONOMETRIC FUNCTIONS" +.PD +\&\fBtan\fR +.RS 4 +.IP "ERRORS DUE TO DIVISION BY ZERO" 4 +.IX Item "ERRORS DUE TO DIVISION BY ZERO" +.PD 0 +.IP "SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS" 4 +.IX Item "SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS" +.RE +.RS 4 +.RE +.IP "PLANE ANGLE CONVERSIONS" 4 +.IX Item "PLANE ANGLE CONVERSIONS" +.PD +deg2rad, grad2rad, rad2deg, grad2deg, deg2grad, rad2grad, rad2rad, deg2deg, +grad2grad +.IP "RADIAL COORDINATE CONVERSIONS" 4 +.IX Item "RADIAL COORDINATE CONVERSIONS" +.RS 4 +.PD 0 +.IP "COORDINATE SYSTEMS" 4 +.IX Item "COORDINATE SYSTEMS" +.IP "3\-D ANGLE CONVERSIONS" 4 +.IX Item "3-D ANGLE CONVERSIONS" +.PD +cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, +cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical +.RE +.RS 4 +.RE +.IP "GREAT CIRCLE DISTANCES AND DIRECTIONS" 4 +.IX Item "GREAT CIRCLE DISTANCES AND DIRECTIONS" +.RS 4 +.PD 0 +.IP great_circle_distance 4 +.IX Item "great_circle_distance" +.IP great_circle_direction 4 +.IX Item "great_circle_direction" +.IP great_circle_bearing 4 +.IX Item "great_circle_bearing" +.IP great_circle_destination 4 +.IX Item "great_circle_destination" +.IP great_circle_midpoint 4 +.IX Item "great_circle_midpoint" +.IP great_circle_waypoint 4 +.IX Item "great_circle_waypoint" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "CAVEAT FOR GREAT CIRCLE FORMULAS" 4 +.IX Item "CAVEAT FOR GREAT CIRCLE FORMULAS" +.IP "Real-valued asin and acos" 4 +.IX Item "Real-valued asin and acos" +.PD +asin_real, acos_real +.RE +.RS 4 +.RE +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Memoize \- Make functions faster by trading space for time" +.IX Subsection "Memoize - Make functions faster by trading space for time" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.IP DETAILS 4 +.IX Item "DETAILS" +.IP OPTIONS 4 +.IX Item "OPTIONS" +.RS 4 +.IP INSTALL 4 +.IX Item "INSTALL" +.IP NORMALIZER 4 +.IX Item "NORMALIZER" +.ie n .IP """SCALAR_CACHE"", ""LIST_CACHE""" 4 +.el .IP "\f(CWSCALAR_CACHE\fR, \f(CWLIST_CACHE\fR" 4 +.IX Item "SCALAR_CACHE, LIST_CACHE" +.PD +\&\f(CW\*(C`MEMORY\*(C'\fR, \f(CW\*(C`HASH\*(C'\fR, \f(CW\*(C`TIE\*(C'\fR, \f(CW\*(C`FAULT\*(C'\fR, \f(CW\*(C`MERGE\*(C'\fR +.RE +.RS 4 +.RE +.IP "OTHER FACILITIES" 4 +.IX Item "OTHER FACILITIES" +.RS 4 +.PD 0 +.ie n .IP """unmemoize""" 4 +.el .IP \f(CWunmemoize\fR 4 +.IX Item "unmemoize" +.ie n .IP """flush_cache""" 4 +.el .IP \f(CWflush_cache\fR 4 +.IX Item "flush_cache" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "PERSISTENT CACHE SUPPORT" 4 +.IX Item "PERSISTENT CACHE SUPPORT" +.IP "EXPIRATION SUPPORT" 4 +.IX Item "EXPIRATION SUPPORT" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "THANK YOU" 4 +.IX Item "THANK YOU" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Memoize::AnyDBM_File \- glue to provide EXISTS for AnyDBM_File for Storable use" +.IX Subsection "Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "Memoize::Expire \- Plug-in module for automatic expiration of memoized values" +.IX Subsection "Memoize::Expire - Plug-in module for automatic expiration of memoized values" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP INTERFACE 4 +.IX Item "INTERFACE" +.PD +.Vb 1 +\& TIEHASH, EXISTS, STORE +.Ve +.IP ALTERNATIVES 4 +.IX Item "ALTERNATIVES" +.PD 0 +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Memoize::NDBM_File \- glue to provide EXISTS for NDBM_File for Storable use" +.IX Subsection "Memoize::NDBM_File - glue to provide EXISTS for NDBM_File for Storable use" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "Memoize::SDBM_File \- DEPRECATED compability shim" +.IX Subsection "Memoize::SDBM_File - DEPRECATED compability shim" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Memoize::Storable \- store Memoized data in Storable database" +.IX Subsection "Memoize::Storable - store Memoized data in Storable database" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.SS "Module::CoreList \- what modules shipped with versions of perl" +.IX Subsection "Module::CoreList - what modules shipped with versions of perl" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FUNCTIONS API" 4 +.IX Item "FUNCTIONS API" +.PD +\&\f(CWfirst_release( MODULE )\fR, \f(CWfirst_release_by_date( MODULE )\fR, +\&\f(CW\*(C`find_modules( REGEX, [ LIST OF PERLS ] )\*(C'\fR, \f(CWfind_version( PERL_VERSION +)\fR, \f(CW\*(C`is_core( MODULE, [ MODULE_VERSION, [ PERL_VERSION ] ] )\*(C'\fR, +\&\f(CW\*(C`is_deprecated( MODULE, PERL_VERSION )\*(C'\fR, \f(CWdeprecated_in( MODULE )\fR, +\&\f(CWremoved_from( MODULE )\fR, \f(CWremoved_from_by_date( MODULE )\fR, +\&\f(CW\*(C`changes_between( PERL_VERSION, PERL_VERSION )\*(C'\fR +.IP "DATA STRUCTURES" 4 +.IX Item "DATA STRUCTURES" +\&\f(CW%Module::CoreList::version\fR, \f(CW%Module::CoreList::delta\fR, +\&\f(CW%Module::CoreList::released\fR, \f(CW%Module::CoreList::families\fR, +\&\f(CW%Module::CoreList::deprecated\fR, \f(CW%Module::CoreList::upstream\fR, +\&\f(CW%Module::CoreList::bug_tracker\fR +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Module::CoreList::Utils \- what utilities shipped with versions of perl" +.IX Subsection "Module::CoreList::Utils - what utilities shipped with versions of perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FUNCTIONS API" 4 +.IX Item "FUNCTIONS API" +.PD +\&\f(CW\*(C`utilities\*(C'\fR, \f(CWfirst_release( UTILITY )\fR, \f(CWfirst_release_by_date( UTILITY +)\fR, \f(CWremoved_from( UTILITY )\fR, \f(CWremoved_from_by_date( UTILITY )\fR +.IP "DATA STRUCTURES" 4 +.IX Item "DATA STRUCTURES" +\&\f(CW%Module::CoreList::Utils::utilities\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Module::Load \- runtime require of both modules and files" +.IX Subsection "Module::Load - runtime require of both modules and files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "Difference between ""load"" and ""autoload""" 4 +.el .IP "Difference between \f(CWload\fR and \f(CWautoload\fR" 4 +.IX Item "Difference between load and autoload" +.RE +.RS 4 +.RE +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +load, autoload, load_remote, autoload_remote +.IP Rules 4 +.IX Item "Rules" +.PD 0 +.IP "IMPORTS THE FUNCTIONS" 4 +.IX Item "IMPORTS THE FUNCTIONS" +.PD +"load","autoload","load_remote","autoload_remote", 'all', '','none',undef +.IP Caveats 4 +.IX Item "Caveats" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Module::Load::Conditional \- Looking up module information / loading at runtime" +.IX Subsection "Module::Load::Conditional - Looking up module information / loading at runtime" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Methods 4 +.IX Item "Methods" +.RS 4 +.ie n .IP "$href = check_install( module => NAME [, version => VERSION, verbose => BOOL ] );" 4 +.el .IP "\f(CW$href\fR = check_install( module => NAME [, version => VERSION, verbose => BOOL ] );" 4 +.IX Item "$href = check_install( module => NAME [, version => VERSION, verbose => BOOL ] );" +.PD +module, version, verbose, file, dir, version, uptodate +.RE +.RS 4 +.RE +.ie n .IP "$bool = can_load( modules => { NAME => VERSION [,NAME => VERSION] }, [verbose => BOOL, nocache => BOOL, autoload => BOOL] )" 4 +.el .IP "\f(CW$bool\fR = can_load( modules => { NAME => VERSION [,NAME => VERSION] }, [verbose => BOOL, nocache => BOOL, autoload => BOOL] )" 4 +.IX Item "$bool = can_load( modules => { NAME => VERSION [,NAME => VERSION] }, [verbose => BOOL, nocache => BOOL, autoload => BOOL] )" +modules, verbose, nocache, autoload +.ie n .IP "@list = requires( MODULE );" 4 +.el .IP "\f(CW@list\fR = requires( MODULE );" 4 +.IX Item "@list = requires( MODULE );" +.PD 0 +.IP "Global Variables" 4 +.IX Item "Global Variables" +.RS 4 +.ie n .IP $Module::Load::Conditional::VERBOSE 4 +.el .IP \f(CW$Module::Load::Conditional::VERBOSE\fR 4 +.IX Item "$Module::Load::Conditional::VERBOSE" +.ie n .IP $Module::Load::Conditional::FIND_VERSION 4 +.el .IP \f(CW$Module::Load::Conditional::FIND_VERSION\fR 4 +.IX Item "$Module::Load::Conditional::FIND_VERSION" +.ie n .IP $Module::Load::Conditional::CHECK_INC_HASH 4 +.el .IP \f(CW$Module::Load::Conditional::CHECK_INC_HASH\fR 4 +.IX Item "$Module::Load::Conditional::CHECK_INC_HASH" +.ie n .IP $Module::Load::Conditional::FORCE_SAFE_INC 4 +.el .IP \f(CW$Module::Load::Conditional::FORCE_SAFE_INC\fR 4 +.IX Item "$Module::Load::Conditional::FORCE_SAFE_INC" +.ie n .IP $Module::Load::Conditional::CACHE 4 +.el .IP \f(CW$Module::Load::Conditional::CACHE\fR 4 +.IX Item "$Module::Load::Conditional::CACHE" +.ie n .IP $Module::Load::Conditional::ERROR 4 +.el .IP \f(CW$Module::Load::Conditional::ERROR\fR 4 +.IX Item "$Module::Load::Conditional::ERROR" +.ie n .IP $Module::Load::Conditional::DEPRECATED 4 +.el .IP \f(CW$Module::Load::Conditional::DEPRECATED\fR 4 +.IX Item "$Module::Load::Conditional::DEPRECATED" +.RE +.RS 4 +.RE +.IP "See Also" 4 +.IX Item "See Also" +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Module::Loaded \- mark modules as loaded or unloaded" +.IX Subsection "Module::Loaded - mark modules as loaded or unloaded" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.ie n .IP "$bool = mark_as_loaded( PACKAGE );" 4 +.el .IP "\f(CW$bool\fR = mark_as_loaded( PACKAGE );" 4 +.IX Item "$bool = mark_as_loaded( PACKAGE );" +.RE +.RS 4 +.RE +.ie n .IP "$bool = mark_as_unloaded( PACKAGE );" 4 +.el .IP "\f(CW$bool\fR = mark_as_unloaded( PACKAGE );" 4 +.IX Item "$bool = mark_as_unloaded( PACKAGE );" +.ie n .IP "$loc = is_loaded( PACKAGE );" 4 +.el .IP "\f(CW$loc\fR = is_loaded( PACKAGE );" 4 +.IX Item "$loc = is_loaded( PACKAGE );" +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Module::Metadata \- Gather package and POD information from perl module files" +.IX Subsection "Module::Metadata - Gather package and POD information from perl module files" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CLASS METHODS" 4 +.IX Item "CLASS METHODS" +.RS 4 +.ie n .IP """new_from_file($filename, collect_pod => 1, decode_pod => 1)""" 4 +.el .IP "\f(CWnew_from_file($filename, collect_pod => 1, decode_pod => 1)\fR" 4 +.IX Item "new_from_file($filename, collect_pod => 1, decode_pod => 1)" +.ie n .IP """new_from_handle($handle, $filename, collect_pod => 1, decode_pod => 1)""" 4 +.el .IP "\f(CWnew_from_handle($handle, $filename, collect_pod => 1, decode_pod => 1)\fR" 4 +.IX Item "new_from_handle($handle, $filename, collect_pod => 1, decode_pod => 1)" +.ie n .IP """new_from_module($module, collect_pod => 1, inc => \e@dirs, decode_pod => 1)""" 4 +.el .IP "\f(CWnew_from_module($module, collect_pod => 1, inc => \e@dirs, decode_pod => 1)\fR" 4 +.IX Item "new_from_module($module, collect_pod => 1, inc => @dirs, decode_pod => 1)" +.ie n .IP """find_module_by_name($module, \e@dirs)""" 4 +.el .IP "\f(CWfind_module_by_name($module, \e@dirs)\fR" 4 +.IX Item "find_module_by_name($module, @dirs)" +.ie n .IP """find_module_dir_by_name($module, \e@dirs)""" 4 +.el .IP "\f(CWfind_module_dir_by_name($module, \e@dirs)\fR" 4 +.IX Item "find_module_dir_by_name($module, @dirs)" +.ie n .IP "provides( %options )" 4 +.el .IP "\f(CWprovides( %options )\fR" 4 +.IX Item "provides( %options )" +.PD +version \fB(required)\fR, dir, files, prefix +.ie n .IP """package_versions_from_directory($dir, \e@files?)""" 4 +.el .IP "\f(CWpackage_versions_from_directory($dir, \e@files?)\fR" 4 +.IX Item "package_versions_from_directory($dir, @files?)" +.PD 0 +.ie n .IP """log_info (internal)""" 4 +.el .IP "\f(CWlog_info (internal)\fR" 4 +.IX Item "log_info (internal)" +.RE +.RS 4 +.RE +.IP "OBJECT METHODS" 4 +.IX Item "OBJECT METHODS" +.RS 4 +.ie n .IP name() 4 +.el .IP \f(CWname()\fR 4 +.IX Item "name()" +.ie n .IP version($package) 4 +.el .IP \f(CWversion($package)\fR 4 +.IX Item "version($package)" +.ie n .IP filename() 4 +.el .IP \f(CWfilename()\fR 4 +.IX Item "filename()" +.ie n .IP packages_inside() 4 +.el .IP \f(CWpackages_inside()\fR 4 +.IX Item "packages_inside()" +.ie n .IP pod_inside() 4 +.el .IP \f(CWpod_inside()\fR 4 +.IX Item "pod_inside()" +.ie n .IP contains_pod() 4 +.el .IP \f(CWcontains_pod()\fR 4 +.IX Item "contains_pod()" +.ie n .IP pod($section) 4 +.el .IP \f(CWpod($section)\fR 4 +.IX Item "pod($section)" +.ie n .IP "is_indexable($package) or is_indexable()" 4 +.el .IP "\f(CWis_indexable($package)\fR or \f(CWis_indexable()\fR" 4 +.IX Item "is_indexable($package) or is_indexable()" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "NDBM_File \- Tied access to ndbm files" +.IX Subsection "NDBM_File - Tied access to ndbm files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`O_RDONLY\*(C'\fR, \f(CW\*(C`O_WRONLY\*(C'\fR, \f(CW\*(C`O_RDWR\*(C'\fR +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.RS 4 +.PD 0 +.ie n .IP """ndbm store returned \-1, errno 22, key ""..."" at ...""" 4 +.el .IP "\f(CWndbm store returned \-1, errno 22, key ""..."" at ...\fR" 4 +.IX Item "ndbm store returned -1, errno 22, key ""..."" at ..." +.RE +.RS 4 +.RE +.IP "SECURITY AND PORTABILITY" 4 +.IX Item "SECURITY AND PORTABILITY" +.IP "BUGS AND WARNINGS" 4 +.IX Item "BUGS AND WARNINGS" +.PD +.SS "NEXT \- Provide a pseudo-class NEXT (et al) that allows method redispatch" +.IX Subsection "NEXT - Provide a pseudo-class NEXT (et al) that allows method redispatch" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Enforcing redispatch" 4 +.IX Item "Enforcing redispatch" +.IP "Avoiding repetitions" 4 +.IX Item "Avoiding repetitions" +.IP "Invoking all versions of a method with a single call" 4 +.IX Item "Invoking all versions of a method with a single call" +.ie n .IP "Using ""EVERY"" methods" 4 +.el .IP "Using \f(CWEVERY\fR methods" 4 +.IX Item "Using EVERY methods" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "BUGS AND IRRITATIONS" 4 +.IX Item "BUGS AND IRRITATIONS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Net::Cmd \- Network Command class (as used by FTP, SMTP etc)" +.IX Subsection "Net::Cmd - Network Command class (as used by FTP, SMTP etc)" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Public Methods" 4 +.IX Item "Public Methods" +.PD +\&\f(CWdebug($level)\fR, \f(CWmessage()\fR, \f(CWcode()\fR, \f(CWok()\fR, \f(CWstatus()\fR, +\&\f(CWdatasend($data)\fR, \f(CWdataend()\fR +.IP "Protected Methods" 4 +.IX Item "Protected Methods" +\&\f(CW\*(C`debug_print($dir, $text)\*(C'\fR, \f(CW\*(C`debug_text($dir, $text)\*(C'\fR, \f(CW\*(C`command($cmd[, +$args, ... ])\*(C'\fR, \f(CWunsupported()\fR, \f(CWresponse()\fR, \f(CWparse_response($text)\fR, +\&\f(CWgetline()\fR, \f(CWungetline($text)\fR, \f(CWrawdatasend($data)\fR, +\&\f(CWread_until_dot()\fR, \f(CWtied_fh()\fR +.IP "Pseudo Responses" 4 +.IX Item "Pseudo Responses" +Initial value, Connection closed, Timeout +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +Default Exports, Optional Exports, Export Tags +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::Config \- Local configuration data for libnet" +.IX Subsection "Net::Config - Local configuration data for libnet" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CWrequires_firewall($host)\fR +.IP "NetConfig Values" 4 +.IX Item "NetConfig Values" +nntp_hosts, snpp_hosts, pop3_hosts, smtp_hosts, ph_hosts, daytime_hosts, +time_hosts, inet_domain, ftp_firewall, ftp_firewall_type, 0, 1, 2, +3, 4, 5, 6, 7, ftp_ext_passive, ftp_int_passive, +local_netmask, test_hosts, test_exists +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +Default Exports, Optional Exports, Export Tags +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::Domain \- Attempt to evaluate the current host's internet name and domain" +.IX Subsection "Net::Domain - Attempt to evaluate the current host's internet name and domain" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Functions 4 +.IX Item "Functions" +.PD +\&\f(CWhostfqdn()\fR, \f(CWdomainname()\fR, \f(CWhostname()\fR, \f(CWhostdomain()\fR +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +Default Exports, Optional Exports, Export Tags +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::FTP \- FTP Client class" +.IX Subsection "Net::FTP - FTP Client class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Overview 4 +.IX Item "Overview" +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`new([$host][, %options])\*(C'\fR +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\f(CW\*(C`login([$login[, $password[, $account]]])\*(C'\fR, \f(CWstarttls()\fR, \f(CWstoptls()\fR, +\&\f(CWprot($level)\fR, \f(CWhost()\fR, \f(CWaccount($acct)\fR, \f(CW\*(C`authorize([$auth[, +$resp]])\*(C'\fR, \f(CWsite($args)\fR, \f(CWascii()\fR, \f(CWbinary()\fR, \f(CWtype([$type])\fR, +\&\f(CW\*(C`rename($oldname, $newname)\*(C'\fR, \f(CWdelete($filename)\fR, \f(CWcwd([$dir])\fR, +\&\f(CWcdup()\fR, \f(CWpassive([$passive])\fR, \f(CWpwd()\fR, \f(CWrestart($where)\fR, +\&\f(CW\*(C`rmdir($dir[, $recurse])\*(C'\fR, \f(CW\*(C`mkdir($dir[, $recurse])\*(C'\fR, \f(CW\*(C`alloc($size[, +$record_size])\*(C'\fR, \f(CWls([$dir])\fR, \f(CWdir([$dir])\fR, \f(CW\*(C`get($remote_file[, +$local_file[, $where]])\*(C'\fR, \f(CW\*(C`put($local_file[, $remote_file])\*(C'\fR, +\&\f(CW\*(C`put_unique($local_file[, $remote_file])\*(C'\fR, \f(CW\*(C`append($local_file[, +$remote_file])\*(C'\fR, \f(CWunique_name()\fR, \f(CWmdtm($file)\fR, \f(CWsize($file)\fR, +\&\f(CWsupported($cmd)\fR, \f(CW\*(C`hash([$filehandle_glob_ref[, +$bytes_per_hash_mark]])\*(C'\fR, \f(CWfeature($name)\fR, \f(CWnlst([$dir])\fR, +\&\f(CWlist([$dir])\fR, \f(CWretr($file)\fR, \f(CWstor($file)\fR, \f(CWstou($file)\fR, +\&\f(CWappe($file)\fR, \f(CWport([$port])\fR, \f(CWeprt([$port])\fR, \f(CWpasv()\fR, \f(CWepsv()\fR, +\&\f(CW\*(C`pasv_xfer($src_file, $dest_server[, $dest_file ])\*(C'\fR, +\&\f(CW\*(C`pasv_xfer_unique($src_file, $dest_server[, $dest_file ])\*(C'\fR, +\&\f(CWpasv_wait($non_pasv_server)\fR, \f(CWabort()\fR, \f(CWquit()\fR +.IP "Methods for the Adventurous" 4 +.IX Item "Methods for the Adventurous" +\&\f(CW\*(C`quot($cmd[, $args])\*(C'\fR, \f(CWcan_inet6()\fR, \f(CWcan_ssl()\fR +.IP "The dataconn Class" 4 +.IX Item "The dataconn Class" +.PD 0 +.IP Unimplemented 4 +.IX Item "Unimplemented" +.PD +\&\f(CW\*(C`SMNT\*(C'\fR, \f(CW\*(C`HELP\*(C'\fR, \f(CW\*(C`MODE\*(C'\fR, \f(CW\*(C`SYST\*(C'\fR, \f(CW\*(C`STAT\*(C'\fR, \f(CW\*(C`STRU\*(C'\fR, \f(CW\*(C`REIN\*(C'\fR +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD 0 +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.RS 4 +.IP "Reporting Bugs" 4 +.IX Item "Reporting Bugs" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::NNTP \- NNTP Client class" +.IX Subsection "Net::NNTP - NNTP Client class" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`new([$host][, %options])\*(C'\fR +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\f(CWhost()\fR, \f(CWstarttls()\fR, \f(CW\*(C`article([{$msgid|$msgnum}[, $fh]])\*(C'\fR, +\&\f(CW\*(C`body([{$msgid|$msgnum}[, [$fh]])\*(C'\fR, \f(CW\*(C`head([{$msgid|$msgnum}[, [$fh]])\*(C'\fR, +\&\f(CWarticlefh([{$msgid|$msgnum}])\fR, \f(CWbodyfh([{$msgid|$msgnum}])\fR, +\&\f(CWheadfh([{$msgid|$msgnum}])\fR, \f(CWnntpstat([{$msgid|$msgnum}])\fR, +\&\f(CWgroup([$group])\fR, \f(CWhelp()\fR, \f(CW\*(C`ihave($msgid[, $message])\*(C'\fR, \f(CWlast()\fR, +\&\f(CWdate()\fR, \f(CWpostok()\fR, \f(CW\*(C`authinfo($user, $pass)\*(C'\fR, \f(CW\*(C`authinfo_simple($user, +$pass)\*(C'\fR, \f(CWlist()\fR, \f(CW\*(C`newgroups($since[, $distributions])\*(C'\fR, +\&\f(CW\*(C`newnews($since[, $groups[, $distributions]])\*(C'\fR, \f(CWnext()\fR, +\&\f(CWpost([$message])\fR, \f(CWpostfh()\fR, \f(CWslave()\fR, \f(CWquit()\fR, \f(CWcan_inet6()\fR, +\&\f(CWcan_ssl()\fR +.IP "Extension Methods" 4 +.IX Item "Extension Methods" +\&\f(CWnewsgroups([$pattern])\fR, \f(CWdistributions()\fR, \f(CWdistribution_patterns()\fR, +\&\f(CWsubscriptions()\fR, \f(CWoverview_fmt()\fR, \f(CWactive_times()\fR, +\&\f(CWactive([$pattern])\fR, \f(CWxgtitle($pattern)\fR, \f(CW\*(C`xhdr($header, +$message_spec)\*(C'\fR, \f(CWxover($message_spec)\fR, \f(CWxpath($message_id)\fR, +\&\f(CW\*(C`xpat($header, $pattern, $message_spec)\*(C'\fR, \f(CWxrover($message_spec)\fR, +\&\f(CWlistgroup([$group])\fR, \f(CWreader()\fR +.IP Unsupported 4 +.IX Item "Unsupported" +.PD 0 +.IP Definitions 4 +.IX Item "Definitions" +.PD +\&\f(CW$message_spec\fR, \f(CW$pattern\fR, Examples, \f(CW\*(C`[^]\-]\*(C'\fR, \f(CW*bdc\fR, \f(CW\*(C`[0\-9a\-zA\-Z]\*(C'\fR, +\&\f(CW\*(C`a??d\*(C'\fR +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD 0 +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::Netrc \- OO interface to users netrc file" +.IX Subsection "Net::Netrc - OO interface to users netrc file" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "The \fI.netrc\fR File" 4 +.IX Item "The .netrc File" +.PD +machine name, default, login name, password string, account string, macdef +name +.IP "Class Methods" 4 +.IX Item "Class Methods" +\&\f(CW\*(C`lookup($machine[, $login])\*(C'\fR +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\f(CWlogin()\fR, \f(CWpassword()\fR, \f(CWaccount()\fR, \f(CWlpa()\fR +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD 0 +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::POP3 \- Post Office Protocol 3 Client class (RFC1939)" +.IX Subsection "Net::POP3 - Post Office Protocol 3 Client class (RFC1939)" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`new([$host][, %options])\*(C'\fR +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\f(CWhost()\fR, \f(CW\*(C`auth($username, $password)\*(C'\fR, \f(CWuser($user)\fR, \f(CWpass($pass)\fR, +\&\f(CW\*(C`login([$user[, $pass]])\*(C'\fR, \f(CWstarttls(%sslargs)\fR, \f(CW\*(C`apop([$user[, +$pass]])\*(C'\fR, \f(CWbanner()\fR, \f(CWcapa()\fR, \f(CWcapabilities()\fR, \f(CW\*(C`top($msgnum[, +$numlines])\*(C'\fR, \f(CWlist([$msgnum])\fR, \f(CW\*(C`get($msgnum[, $fh])\*(C'\fR, +\&\f(CWgetfh($msgnum)\fR, \f(CWlast()\fR, \f(CWpopstat()\fR, \f(CWping($user)\fR, +\&\f(CWuidl([$msgnum])\fR, \f(CWdelete($msgnum)\fR, \f(CWreset()\fR, \f(CWquit()\fR, +\&\f(CWcan_inet6()\fR, \f(CWcan_ssl()\fR +.IP Notes 4 +.IX Item "Notes" +.RE +.RS 4 +.RE +.PD 0 +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::Ping \- check a remote host for reachability" +.IX Subsection "Net::Ping - check a remote host for reachability" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Functions 4 +.IX Item "Functions" +.PD +Net::Ping\->new([proto, timeout, bytes, device, tos, ttl, family, + host, port, bind, gateway, retrans, pingstring, + source_verify econnrefused dontfrag +IPV6_USE_MIN_MTU IPV6_RECVPATHMTU]) , \f(CW$p\fR\->ping($host [, \f(CW$timeout\fR [, +\&\f(CW$family\fR]]); , \f(CW$p\fR\->source_verify( { 0 | 1 } ); , +\&\f(CW$p\fR\->service_check( { 0 | 1 } ); , \f(CW$p\fR\->tcp_service_check( { +0 | 1 } ); , \f(CW$p\fR\->hires( { 0 | 1 } ); , \f(CW$p\fR\->time +, \f(CW$p\fR\->socket_blocking_mode( \f(CW$fh\fR, \f(CW$mode\fR ); , +\&\f(CW$p\fR\->IPV6_USE_MIN_MTU , \f(CW$p\fR\->IPV6_RECVPATHMTU +, \f(CW$p\fR\->IPV6_HOPLIMIT , \f(CW$p\fR\->IPV6_REACHCONF +\&\fINYI\fR , \f(CW$p\fR\->bind($local_addr); , +\&\f(CW$p\fR\->message_type([$ping_type]); , \f(CW$p\fR\->open($host); , +\&\f(CW$p\fR\->ack( [ \f(CW$host\fR ] ); , \f(CW$p\fR\->nack( \f(CW$failed_ack_host\fR ); , +\&\f(CW$p\fR\->ack_unfork($host) , \f(CW$p\fR\->ping_icmp([$host, \f(CW$timeout\fR, +\&\f(CW$family\fR]) , \f(CW$p\fR\->ping_icmpv6([$host, \f(CW$timeout\fR, \f(CW$family\fR]) +, \f(CW$p\fR\->ping_stream([$host, \f(CW$timeout\fR, \f(CW$family\fR]) , +\&\f(CW$p\fR\->ping_syn([$host, \f(CW$ip\fR, \f(CW$start_time\fR, \f(CW$stop_time\fR]) , +\&\f(CW$p\fR\->ping_syn_fork([$host, \f(CW$timeout\fR, \f(CW$family\fR]) , +\&\f(CW$p\fR\->ping_tcp([$host, \f(CW$timeout\fR, \f(CW$family\fR]) , \f(CW$p\fR\->ping_udp([$host, +\&\f(CW$timeout\fR, \f(CW$family\fR]) , \f(CW$p\fR\->ping_external([$host, \f(CW$timeout\fR, +\&\f(CW$family\fR]) , \f(CW$p\fR\->tcp_connect([$ip, \f(CW$timeout\fR]) +, \f(CW$p\fR\->tcp_echo([$ip, \f(CW$timeout\fR, \f(CW$pingstring\fR]) , +\&\f(CW$p\fR\->\fBclose()\fR; , \f(CW$p\fR\->port_number([$port_number]) , +\&\f(CW$p\fR\->mselect , \f(CW$p\fR\->ntop , \f(CW$p\fR\->checksum($msg) , +\&\f(CW$p\fR\->icmp_result , pingecho($host [, \f(CW$timeout\fR]); , +wakeonlan($mac, [$host, [$port]]) +.IX Xref "new ping source_verify service_check tcp_service_check hires time socket_blocking_mode IPV6_USE_MIN_MTU IPV6_RECVPATHMTU IPV6_HOPLIMIT IPV6_REACHCONF bind message_type open ack nack ack_unfork ping_icmp ping_icmpv6 ping_stream ping_syn ping_syn_fork ping_tcp ping_udp ping_external tcp_connect tcp_echo close port_number mselect ntop checksum icmp_result pingecho wakeonlan" +.RE +.RS 4 +.RE +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP INSTALL 4 +.IX Item "INSTALL" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Net::SMTP \- Simple Mail Transfer Protocol Client" +.IX Subsection "Net::SMTP - Simple Mail Transfer Protocol Client" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`new([$host][, %options])\*(C'\fR +.RE +.RS 4 +.RE +.IP "Object Methods" 4 +.IX Item "Object Methods" +\&\f(CWbanner()\fR, \f(CWdomain()\fR, \f(CWhello($domain)\fR, \f(CWhost()\fR, \f(CWetrn($domain)\fR, +\&\f(CWstarttls(%sslargs)\fR, \f(CW\*(C`auth($username, $password)\*(C'\fR, \f(CWauth($sasl)\fR, +\&\f(CW\*(C`mail($address[, %options])\*(C'\fR, \f(CWsend($address)\fR, +\&\f(CWsend_or_mail($address)\fR, \f(CWsend_and_mail($address)\fR, \f(CWreset()\fR, +\&\f(CW\*(C`recipient($address[, $address[, ...]][, %options])\*(C'\fR, \f(CW\*(C`to($address[, +$address[, ...]])\*(C'\fR, \f(CW\*(C`cc($address[, $address[, ...]])\*(C'\fR, \f(CW\*(C`bcc($address[, +$address[, ...]])\*(C'\fR, \f(CWdata([$data])\fR, \f(CWbdat($data)\fR, \f(CWbdatlast($data)\fR, +\&\f(CWexpand($address)\fR, \f(CWverify($address)\fR, \f(CWhelp([$subject])\fR, \f(CWquit()\fR, +\&\f(CWcan_inet6()\fR, \f(CWcan_ssl()\fR +.RS 4 +.IP Addresses 4 +.IX Item "Addresses" +.RE +.RS 4 +.RE +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::Time \- time and daytime network client interface" +.IX Subsection "Net::Time - time and daytime network client interface" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Functions 4 +.IX Item "Functions" +.PD +\&\f(CW\*(C`inet_time([$host[, $protocol[, $timeout]]])\*(C'\fR, \f(CW\*(C`inet_daytime([$host[, +$protocol[, $timeout]]])\*(C'\fR +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +Default Exports, Optional Exports, Export Tags +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Net::hostent \- by-name interface to Perl's built-in gethost*() functions" +.IX Subsection "Net::hostent - by-name interface to Perl's built-in gethost*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Net::libnetFAQ, libnetFAQ \- libnet Frequently Asked Questions" +.IX Subsection "Net::libnetFAQ, libnetFAQ - libnet Frequently Asked Questions" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Where to get this document" 4 +.IX Item "Where to get this document" +.IP "How to contribute to this document" 4 +.IX Item "How to contribute to this document" +.RE +.RS 4 +.RE +.IP "Author and Copyright Information" 4 +.IX Item "Author and Copyright Information" +.RS 4 +.IP Disclaimer 4 +.IX Item "Disclaimer" +.RE +.RS 4 +.RE +.IP "Obtaining and installing libnet" 4 +.IX Item "Obtaining and installing libnet" +.RS 4 +.IP "What is libnet ?" 4 +.IX Item "What is libnet ?" +.IP "Which version of perl do I need ?" 4 +.IX Item "Which version of perl do I need ?" +.IP "What other modules do I need ?" 4 +.IX Item "What other modules do I need ?" +.IP "What machines support libnet ?" 4 +.IX Item "What machines support libnet ?" +.IP "Where can I get the latest libnet release" 4 +.IX Item "Where can I get the latest libnet release" +.RE +.RS 4 +.RE +.IP "Using Net::FTP" 4 +.IX Item "Using Net::FTP" +.RS 4 +.IP "How do I download files from an FTP server ?" 4 +.IX Item "How do I download files from an FTP server ?" +.IP "How do I transfer files in binary mode ?" 4 +.IX Item "How do I transfer files in binary mode ?" +.IP "How can I get the size of a file on a remote FTP server ?" 4 +.IX Item "How can I get the size of a file on a remote FTP server ?" +.IP "How can I get the modification time of a file on a remote FTP server ?" 4 +.IX Item "How can I get the modification time of a file on a remote FTP server ?" +.IP "How can I change the permissions of a file on a remote server ?" 4 +.IX Item "How can I change the permissions of a file on a remote server ?" +.IP "Can I do a reget operation like the ftp command ?" 4 +.IX Item "Can I do a reget operation like the ftp command ?" +.IP "How do I get a directory listing from an FTP server ?" 4 +.IX Item "How do I get a directory listing from an FTP server ?" +.IP "Changing directory to """" does not fail ?" 4 +.IX Item "Changing directory to """" does not fail ?" +.IP "I am behind a SOCKS firewall, but the Firewall option does not work ?" 4 +.IX Item "I am behind a SOCKS firewall, but the Firewall option does not work ?" +.IP "I am behind an FTP proxy firewall, but cannot access machines outside ?" 4 +.IX Item "I am behind an FTP proxy firewall, but cannot access machines outside ?" +.IP "My ftp proxy firewall does not listen on port 21" 4 +.IX Item "My ftp proxy firewall does not listen on port 21" +.IP "Is it possible to change the file permissions of a file on an FTP server ?" 4 +.IX Item "Is it possible to change the file permissions of a file on an FTP server ?" +.IP "I have seen scripts call a method message, but cannot find it documented ?" 4 +.IX Item "I have seen scripts call a method message, but cannot find it documented ?" +.IP "Why does Net::FTP not implement mput and mget methods" 4 +.IX Item "Why does Net::FTP not implement mput and mget methods" +.RE +.RS 4 +.RE +.IP "Using Net::SMTP" 4 +.IX Item "Using Net::SMTP" +.RS 4 +.IP "Why can't the part of an Email address after the @ be used as the hostname ?" 4 +.IX Item "Why can't the part of an Email address after the @ be used as the hostname ?" +.IP "Why does Net::SMTP not do DNS MX lookups ?" 4 +.IX Item "Why does Net::SMTP not do DNS MX lookups ?" +.IP "The verify method always returns true ?" 4 +.IX Item "The verify method always returns true ?" +.RE +.RS 4 +.RE +.IP "Debugging scripts" 4 +.IX Item "Debugging scripts" +.RS 4 +.IP "How can I debug my scripts that use Net::* modules ?" 4 +.IX Item "How can I debug my scripts that use Net::* modules ?" +.RE +.RS 4 +.RE +.IP "AUTHOR AND COPYRIGHT" 4 +.IX Item "AUTHOR AND COPYRIGHT" +.PD +.SS "Net::netent \- by-name interface to Perl's built-in getnet*() functions" +.IX Subsection "Net::netent - by-name interface to Perl's built-in getnet*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Net::protoent \- by-name interface to Perl's built-in getproto*() functions" +.IX Subsection "Net::protoent - by-name interface to Perl's built-in getproto*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Net::servent \- by-name interface to Perl's built-in getserv*() functions" +.IX Subsection "Net::servent - by-name interface to Perl's built-in getserv*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "O \- Generic interface to Perl Compiler backends" +.IX Subsection "O - Generic interface to Perl Compiler backends" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONVENTIONS 4 +.IX Item "CONVENTIONS" +.IP IMPLEMENTATION 4 +.IX Item "IMPLEMENTATION" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "ODBM_File \- Tied access to odbm files" +.IX Subsection "ODBM_File - Tied access to odbm files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`O_RDONLY\*(C'\fR, \f(CW\*(C`O_WRONLY\*(C'\fR, \f(CW\*(C`O_RDWR\*(C'\fR +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.RS 4 +.PD 0 +.ie n .IP """odbm store returned \-1, errno 22, key ""..."" at ...""" 4 +.el .IP "\f(CWodbm store returned \-1, errno 22, key ""..."" at ...\fR" 4 +.IX Item "odbm store returned -1, errno 22, key ""..."" at ..." +.RE +.RS 4 +.RE +.IP "SECURITY AND PORTABILITY" 4 +.IX Item "SECURITY AND PORTABILITY" +.IP "BUGS AND WARNINGS" 4 +.IX Item "BUGS AND WARNINGS" +.PD +.SS "Opcode \- Disable named opcodes when compiling perl code" +.IX Subsection "Opcode - Disable named opcodes when compiling perl code" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP WARNING 4 +.IX Item "WARNING" +.IP "Operator Names and Operator Lists" 4 +.IX Item "Operator Names and Operator Lists" +.PD +an operator name (opname), an operator tag name (optag), a negated opname +or optag, an operator set (opset) +.IP "Opcode Functions" 4 +.IX Item "Opcode Functions" +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) +.IP "Manipulating Opsets" 4 +.IX Item "Manipulating Opsets" +.PD 0 +.IP "TO DO (maybe)" 4 +.IX Item "TO DO (maybe)" +.IP "Predefined Opcode Tags" 4 +.IX Item "Predefined Opcode Tags" +.PD +: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, :load, +:still_to_be_decided, :dangerous +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD +.SS "POSIX \- Perl interface to IEEE Std 1003.1" +.IX Subsection "POSIX - Perl interface to IEEE Std 1003.1" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\f(CW\*(C`_exit\*(C'\fR, \f(CW\*(C`abort\*(C'\fR, \f(CW\*(C`abs\*(C'\fR, \f(CW\*(C`access\*(C'\fR, \f(CW\*(C`acos\*(C'\fR, \f(CW\*(C`acosh\*(C'\fR, \f(CW\*(C`alarm\*(C'\fR, +\&\f(CW\*(C`asctime\*(C'\fR, \f(CW\*(C`asin\*(C'\fR, \f(CW\*(C`asinh\*(C'\fR, \f(CW\*(C`assert\*(C'\fR, \f(CW\*(C`atan\*(C'\fR, \f(CW\*(C`atanh\*(C'\fR, \f(CW\*(C`atan2\*(C'\fR, +\&\f(CW\*(C`atexit\*(C'\fR, \f(CW\*(C`atof\*(C'\fR, \f(CW\*(C`atoi\*(C'\fR, \f(CW\*(C`atol\*(C'\fR, \f(CW\*(C`bsearch\*(C'\fR, \f(CW\*(C`calloc\*(C'\fR, \f(CW\*(C`cbrt\*(C'\fR, +\&\f(CW\*(C`ceil\*(C'\fR, \f(CW\*(C`chdir\*(C'\fR, \f(CW\*(C`chmod\*(C'\fR, \f(CW\*(C`chown\*(C'\fR, \f(CW\*(C`clearerr\*(C'\fR, \f(CW\*(C`clock\*(C'\fR, \f(CW\*(C`close\*(C'\fR, +\&\f(CW\*(C`closedir\*(C'\fR, \f(CW\*(C`cos\*(C'\fR, \f(CW\*(C`cosh\*(C'\fR, \f(CW\*(C`copysign\*(C'\fR, \f(CW\*(C`creat\*(C'\fR, \f(CW\*(C`ctermid\*(C'\fR, \f(CW\*(C`ctime\*(C'\fR, +\&\f(CW\*(C`cuserid\*(C'\fR [POSIX.1\-1988], \f(CW\*(C`difftime\*(C'\fR, \f(CW\*(C`div\*(C'\fR, \f(CW\*(C`dup\*(C'\fR, \f(CW\*(C`dup2\*(C'\fR, \f(CW\*(C`erf\*(C'\fR, +\&\f(CW\*(C`erfc\*(C'\fR, \f(CW\*(C`errno\*(C'\fR, \f(CW\*(C`execl\*(C'\fR, \f(CW\*(C`execle\*(C'\fR, \f(CW\*(C`execlp\*(C'\fR, \f(CW\*(C`execv\*(C'\fR, \f(CW\*(C`execve\*(C'\fR, +\&\f(CW\*(C`execvp\*(C'\fR, \f(CW\*(C`exit\*(C'\fR, \f(CW\*(C`exp\*(C'\fR, \f(CW\*(C`expm1\*(C'\fR, \f(CW\*(C`fabs\*(C'\fR, \f(CW\*(C`fclose\*(C'\fR, \f(CW\*(C`fcntl\*(C'\fR, +\&\f(CW\*(C`fdopen\*(C'\fR, \f(CW\*(C`feof\*(C'\fR, \f(CW\*(C`ferror\*(C'\fR, \f(CW\*(C`fflush\*(C'\fR, \f(CW\*(C`fgetc\*(C'\fR, \f(CW\*(C`fgetpos\*(C'\fR, \f(CW\*(C`fgets\*(C'\fR, +\&\f(CW\*(C`fileno\*(C'\fR, \f(CW\*(C`floor\*(C'\fR, \f(CW\*(C`fdim\*(C'\fR, \f(CW\*(C`fegetround\*(C'\fR, \f(CW\*(C`fesetround\*(C'\fR, \f(CW\*(C`fma\*(C'\fR, +\&\f(CW\*(C`fmax\*(C'\fR, \f(CW\*(C`fmin\*(C'\fR, \f(CW\*(C`fmod\*(C'\fR, \f(CW\*(C`fopen\*(C'\fR, \f(CW\*(C`fork\*(C'\fR, \f(CW\*(C`fpathconf\*(C'\fR, \f(CW\*(C`fpclassify\*(C'\fR, +\&\f(CW\*(C`fprintf\*(C'\fR, \f(CW\*(C`fputc\*(C'\fR, \f(CW\*(C`fputs\*(C'\fR, \f(CW\*(C`fread\*(C'\fR, \f(CW\*(C`free\*(C'\fR, \f(CW\*(C`freopen\*(C'\fR, \f(CW\*(C`frexp\*(C'\fR, +\&\f(CW\*(C`fscanf\*(C'\fR, \f(CW\*(C`fseek\*(C'\fR, \f(CW\*(C`fsetpos\*(C'\fR, \f(CW\*(C`fstat\*(C'\fR, \f(CW\*(C`fsync\*(C'\fR, \f(CW\*(C`ftell\*(C'\fR, \f(CW\*(C`fwrite\*(C'\fR, +\&\f(CW\*(C`getc\*(C'\fR, \f(CW\*(C`getchar\*(C'\fR, \f(CW\*(C`getcwd\*(C'\fR, \f(CW\*(C`getegid\*(C'\fR, \f(CW\*(C`getenv\*(C'\fR, \f(CW\*(C`geteuid\*(C'\fR, +\&\f(CW\*(C`getgid\*(C'\fR, \f(CW\*(C`getgrgid\*(C'\fR, \f(CW\*(C`getgrnam\*(C'\fR, \f(CW\*(C`getgroups\*(C'\fR, \f(CW\*(C`getlogin\*(C'\fR, +\&\f(CW\*(C`getpayload\*(C'\fR, \f(CW\*(C`getpgrp\*(C'\fR, \f(CW\*(C`getpid\*(C'\fR, \f(CW\*(C`getppid\*(C'\fR, \f(CW\*(C`getpwnam\*(C'\fR, \f(CW\*(C`getpwuid\*(C'\fR, +\&\f(CW\*(C`gets\*(C'\fR, \f(CW\*(C`getuid\*(C'\fR, \f(CW\*(C`gmtime\*(C'\fR, \f(CW\*(C`hypot\*(C'\fR, \f(CW\*(C`ilogb\*(C'\fR, \f(CW\*(C`Inf\*(C'\fR, \f(CW\*(C`isalnum\*(C'\fR, +\&\f(CW\*(C`isalpha\*(C'\fR, \f(CW\*(C`isatty\*(C'\fR, \f(CW\*(C`iscntrl\*(C'\fR, \f(CW\*(C`isdigit\*(C'\fR, \f(CW\*(C`isfinite\*(C'\fR, \f(CW\*(C`isgraph\*(C'\fR, +\&\f(CW\*(C`isgreater\*(C'\fR, \f(CW\*(C`isinf\*(C'\fR, \f(CW\*(C`islower\*(C'\fR, \f(CW\*(C`isnan\*(C'\fR, \f(CW\*(C`isnormal\*(C'\fR, \f(CW\*(C`isprint\*(C'\fR, +\&\f(CW\*(C`ispunct\*(C'\fR, \f(CW\*(C`issignaling\*(C'\fR, \f(CW\*(C`isspace\*(C'\fR, \f(CW\*(C`isupper\*(C'\fR, \f(CW\*(C`isxdigit\*(C'\fR, \f(CW\*(C`j0\*(C'\fR, +\&\f(CW\*(C`j1\*(C'\fR, \f(CW\*(C`jn\*(C'\fR, \f(CW\*(C`y0\*(C'\fR, \f(CW\*(C`y1\*(C'\fR, \f(CW\*(C`yn\*(C'\fR, \f(CW\*(C`kill\*(C'\fR, \f(CW\*(C`labs\*(C'\fR, \f(CW\*(C`lchown\*(C'\fR, \f(CW\*(C`ldexp\*(C'\fR, +\&\f(CW\*(C`ldiv\*(C'\fR, \f(CW\*(C`lgamma\*(C'\fR, \f(CW\*(C`log1p\*(C'\fR, \f(CW\*(C`log2\*(C'\fR, \f(CW\*(C`logb\*(C'\fR, \f(CW\*(C`link\*(C'\fR, \f(CW\*(C`localeconv\*(C'\fR, +\&\f(CW\*(C`localtime\*(C'\fR, \f(CW\*(C`log\*(C'\fR, \f(CW\*(C`log10\*(C'\fR, \f(CW\*(C`longjmp\*(C'\fR, \f(CW\*(C`lseek\*(C'\fR, \f(CW\*(C`lrint\*(C'\fR, \f(CW\*(C`lround\*(C'\fR, +\&\f(CW\*(C`malloc\*(C'\fR, \f(CW\*(C`mblen\*(C'\fR, \f(CW\*(C`mbtowc\*(C'\fR, \f(CW\*(C`memchr\*(C'\fR, \f(CW\*(C`memcmp\*(C'\fR, \f(CW\*(C`memcpy\*(C'\fR, +\&\f(CW\*(C`memmove\*(C'\fR, \f(CW\*(C`memset\*(C'\fR, \f(CW\*(C`mkdir\*(C'\fR, \f(CW\*(C`mkfifo\*(C'\fR, \f(CW\*(C`mktime\*(C'\fR, \f(CW\*(C`modf\*(C'\fR, \f(CW\*(C`NaN\*(C'\fR, +\&\f(CW\*(C`nan\*(C'\fR, \f(CW\*(C`nearbyint\*(C'\fR, \f(CW\*(C`nextafter\*(C'\fR, \f(CW\*(C`nexttoward\*(C'\fR, \f(CW\*(C`nice\*(C'\fR, \f(CW\*(C`offsetof\*(C'\fR, +\&\f(CW\*(C`open\*(C'\fR, \f(CW\*(C`opendir\*(C'\fR, \f(CW\*(C`pathconf\*(C'\fR, \f(CW\*(C`pause\*(C'\fR, \f(CW\*(C`perror\*(C'\fR, \f(CW\*(C`pipe\*(C'\fR, \f(CW\*(C`pow\*(C'\fR, +\&\f(CW\*(C`printf\*(C'\fR, \f(CW\*(C`putc\*(C'\fR, \f(CW\*(C`putchar\*(C'\fR, \f(CW\*(C`puts\*(C'\fR, \f(CW\*(C`qsort\*(C'\fR, \f(CW\*(C`raise\*(C'\fR, \f(CW\*(C`rand\*(C'\fR, +\&\f(CW\*(C`read\*(C'\fR, \f(CW\*(C`readdir\*(C'\fR, \f(CW\*(C`realloc\*(C'\fR, \f(CW\*(C`remainder\*(C'\fR, \f(CW\*(C`remove\*(C'\fR, \f(CW\*(C`remquo\*(C'\fR, +\&\f(CW\*(C`rename\*(C'\fR, \f(CW\*(C`rewind\*(C'\fR, \f(CW\*(C`rewinddir\*(C'\fR, \f(CW\*(C`rint\*(C'\fR, \f(CW\*(C`rmdir\*(C'\fR, \f(CW\*(C`round\*(C'\fR, \f(CW\*(C`scalbn\*(C'\fR, +\&\f(CW\*(C`scanf\*(C'\fR, \f(CW\*(C`setgid\*(C'\fR, \f(CW\*(C`setjmp\*(C'\fR, \f(CW\*(C`setlocale\*(C'\fR, \f(CW\*(C`setpayload\*(C'\fR, +\&\f(CW\*(C`setpayloadsig\*(C'\fR, \f(CW\*(C`setpgid\*(C'\fR, \f(CW\*(C`setsid\*(C'\fR, \f(CW\*(C`setuid\*(C'\fR, \f(CW\*(C`sigaction\*(C'\fR, +\&\f(CW\*(C`siglongjmp\*(C'\fR, \f(CW\*(C`signbit\*(C'\fR, \f(CW\*(C`sigpending\*(C'\fR, \f(CW\*(C`sigprocmask\*(C'\fR, \f(CW\*(C`sigsetjmp\*(C'\fR, +\&\f(CW\*(C`sigsuspend\*(C'\fR, \f(CW\*(C`sin\*(C'\fR, \f(CW\*(C`sinh\*(C'\fR, \f(CW\*(C`sleep\*(C'\fR, \f(CW\*(C`sprintf\*(C'\fR, \f(CW\*(C`sqrt\*(C'\fR, \f(CW\*(C`srand\*(C'\fR, +\&\f(CW\*(C`sscanf\*(C'\fR, \f(CW\*(C`stat\*(C'\fR, \f(CW\*(C`strcat\*(C'\fR, \f(CW\*(C`strchr\*(C'\fR, \f(CW\*(C`strcmp\*(C'\fR, \f(CW\*(C`strcoll\*(C'\fR, \f(CW\*(C`strcpy\*(C'\fR, +\&\f(CW\*(C`strcspn\*(C'\fR, \f(CW\*(C`strerror\*(C'\fR, \f(CW\*(C`strftime\*(C'\fR, \f(CW\*(C`strlen\*(C'\fR, \f(CW\*(C`strncat\*(C'\fR, \f(CW\*(C`strncmp\*(C'\fR, +\&\f(CW\*(C`strncpy\*(C'\fR, \f(CW\*(C`strpbrk\*(C'\fR, \f(CW\*(C`strrchr\*(C'\fR, \f(CW\*(C`strspn\*(C'\fR, \f(CW\*(C`strstr\*(C'\fR, \f(CW\*(C`strtod\*(C'\fR, +\&\f(CW\*(C`strtok\*(C'\fR, \f(CW\*(C`strtol\*(C'\fR, \f(CW\*(C`strtold\*(C'\fR, \f(CW\*(C`strtoul\*(C'\fR, \f(CW\*(C`strxfrm\*(C'\fR, \f(CW\*(C`sysconf\*(C'\fR, +\&\f(CW\*(C`system\*(C'\fR, \f(CW\*(C`tan\*(C'\fR, \f(CW\*(C`tanh\*(C'\fR, \f(CW\*(C`tcdrain\*(C'\fR, \f(CW\*(C`tcflow\*(C'\fR, \f(CW\*(C`tcflush\*(C'\fR, +\&\f(CW\*(C`tcgetpgrp\*(C'\fR, \f(CW\*(C`tcsendbreak\*(C'\fR, \f(CW\*(C`tcsetpgrp\*(C'\fR, \f(CW\*(C`tgamma\*(C'\fR, \f(CW\*(C`time\*(C'\fR, \f(CW\*(C`times\*(C'\fR, +\&\f(CW\*(C`tmpfile\*(C'\fR, \f(CW\*(C`tmpnam\*(C'\fR, \f(CW\*(C`tolower\*(C'\fR, \f(CW\*(C`toupper\*(C'\fR, \f(CW\*(C`trunc\*(C'\fR, \f(CW\*(C`ttyname\*(C'\fR, +\&\f(CW\*(C`tzname\*(C'\fR, \f(CW\*(C`tzset\*(C'\fR, \f(CW\*(C`umask\*(C'\fR, \f(CW\*(C`uname\*(C'\fR, \f(CW\*(C`ungetc\*(C'\fR, \f(CW\*(C`unlink\*(C'\fR, \f(CW\*(C`utime\*(C'\fR, +\&\f(CW\*(C`vfprintf\*(C'\fR, \f(CW\*(C`vprintf\*(C'\fR, \f(CW\*(C`vsprintf\*(C'\fR, \f(CW\*(C`wait\*(C'\fR, \f(CW\*(C`waitpid\*(C'\fR, \f(CW\*(C`wctomb\*(C'\fR, +\&\f(CW\*(C`write\*(C'\fR +.IP CLASSES 4 +.IX Item "CLASSES" +.RS 4 +.PD 0 +.ie n .IP """POSIX::SigAction""" 4 +.el .IP \f(CWPOSIX::SigAction\fR 4 +.IX Item "POSIX::SigAction" +.PD +\&\f(CW\*(C`new\*(C'\fR, \f(CW\*(C`handler\*(C'\fR, \f(CW\*(C`mask\*(C'\fR, \f(CW\*(C`flags\*(C'\fR, \f(CW\*(C`safe\*(C'\fR +.ie n .IP """POSIX::SigRt""" 4 +.el .IP \f(CWPOSIX::SigRt\fR 4 +.IX Item "POSIX::SigRt" +\&\f(CW%SIGRT\fR, \f(CW\*(C`SIGRTMIN\*(C'\fR, \f(CW\*(C`SIGRTMAX\*(C'\fR +.ie n .IP """POSIX::SigSet""" 4 +.el .IP \f(CWPOSIX::SigSet\fR 4 +.IX Item "POSIX::SigSet" +\&\f(CW\*(C`new\*(C'\fR, \f(CW\*(C`addset\*(C'\fR, \f(CW\*(C`delset\*(C'\fR, \f(CW\*(C`emptyset\*(C'\fR, \f(CW\*(C`fillset\*(C'\fR, \f(CW\*(C`ismember\*(C'\fR +.ie n .IP """POSIX::Termios""" 4 +.el .IP \f(CWPOSIX::Termios\fR 4 +.IX Item "POSIX::Termios" +\&\f(CW\*(C`new\*(C'\fR, \f(CW\*(C`getattr\*(C'\fR, \f(CW\*(C`getcc\*(C'\fR, \f(CW\*(C`getcflag\*(C'\fR, \f(CW\*(C`getiflag\*(C'\fR, \f(CW\*(C`getispeed\*(C'\fR, +\&\f(CW\*(C`getlflag\*(C'\fR, \f(CW\*(C`getoflag\*(C'\fR, \f(CW\*(C`getospeed\*(C'\fR, \f(CW\*(C`setattr\*(C'\fR, \f(CW\*(C`setcc\*(C'\fR, \f(CW\*(C`setcflag\*(C'\fR, +\&\f(CW\*(C`setiflag\*(C'\fR, \f(CW\*(C`setispeed\*(C'\fR, \f(CW\*(C`setlflag\*(C'\fR, \f(CW\*(C`setoflag\*(C'\fR, \f(CW\*(C`setospeed\*(C'\fR, Baud +rate values, Terminal interface values, \f(CW\*(C`c_cc\*(C'\fR field values, \f(CW\*(C`c_cflag\*(C'\fR +field values, \f(CW\*(C`c_iflag\*(C'\fR field values, \f(CW\*(C`c_lflag\*(C'\fR field values, \f(CW\*(C`c_oflag\*(C'\fR +field values +.RE +.RS 4 +.RE +.IP "PATHNAME CONSTANTS" 4 +.IX Item "PATHNAME CONSTANTS" +Constants +.IP "POSIX CONSTANTS" 4 +.IX Item "POSIX CONSTANTS" +Constants +.IP "RESOURCE CONSTANTS" 4 +.IX Item "RESOURCE CONSTANTS" +Constants +.IP "SYSTEM CONFIGURATION" 4 +.IX Item "SYSTEM CONFIGURATION" +Constants +.IP ERRNO 4 +.IX Item "ERRNO" +Constants +.IP FCNTL 4 +.IX Item "FCNTL" +Constants +.IP FLOAT 4 +.IX Item "FLOAT" +Constants +.IP "FLOATING-POINT ENVIRONMENT" 4 +.IX Item "FLOATING-POINT ENVIRONMENT" +Constants +.IP LIMITS 4 +.IX Item "LIMITS" +Constants +.IP LOCALE 4 +.IX Item "LOCALE" +Constants +.IP MATH 4 +.IX Item "MATH" +Constants +.IP SIGNAL 4 +.IX Item "SIGNAL" +Constants +.IP STAT 4 +.IX Item "STAT" +Constants, Macros +.IP STDLIB 4 +.IX Item "STDLIB" +Constants +.IP STDIO 4 +.IX Item "STDIO" +Constants +.IP TIME 4 +.IX Item "TIME" +Constants +.IP UNISTD 4 +.IX Item "UNISTD" +Constants +.IP WAIT 4 +.IX Item "WAIT" +Constants, \f(CW\*(C`WNOHANG\*(C'\fR, \f(CW\*(C`WUNTRACED\*(C'\fR, Macros, \f(CW\*(C`WIFEXITED\*(C'\fR, \f(CW\*(C`WEXITSTATUS\*(C'\fR, +\&\f(CW\*(C`WIFSIGNALED\*(C'\fR, \f(CW\*(C`WTERMSIG\*(C'\fR, \f(CW\*(C`WIFSTOPPED\*(C'\fR, \f(CW\*(C`WSTOPSIG\*(C'\fR +.IP WINSOCK 4 +.IX Item "WINSOCK" +Constants +.SS "Params::Check \- A generic input parsing/checking mechanism." +.IX Subsection "Params::Check - A generic input parsing/checking mechanism." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Template 4 +.IX Item "Template" +.PD +default, required, strict_type, defined, no_override, store, allow +.IP Functions 4 +.IX Item "Functions" +.RS 4 +.PD 0 +.IP "check( \e%tmpl, \e%args, [$verbose] );" 4 +.IX Item "check( %tmpl, %args, [$verbose] );" +.PD +Template, Arguments, Verbose +.RE +.RS 4 +.RE +.ie n .IP "allow( $test_me, \e@criteria );" 4 +.el .IP "allow( \f(CW$test_me\fR, \e@criteria );" 4 +.IX Item "allow( $test_me, @criteria );" +string, regexp, subroutine, array ref +.IP \fBlast_error()\fR 4 +.IX Item "last_error()" +.PD 0 +.IP "Global Variables" 4 +.IX Item "Global Variables" +.RS 4 +.ie n .IP $Params::Check::VERBOSE 4 +.el .IP \f(CW$Params::Check::VERBOSE\fR 4 +.IX Item "$Params::Check::VERBOSE" +.ie n .IP $Params::Check::STRICT_TYPE 4 +.el .IP \f(CW$Params::Check::STRICT_TYPE\fR 4 +.IX Item "$Params::Check::STRICT_TYPE" +.ie n .IP $Params::Check::ALLOW_UNKNOWN 4 +.el .IP \f(CW$Params::Check::ALLOW_UNKNOWN\fR 4 +.IX Item "$Params::Check::ALLOW_UNKNOWN" +.ie n .IP $Params::Check::STRIP_LEADING_DASHES 4 +.el .IP \f(CW$Params::Check::STRIP_LEADING_DASHES\fR 4 +.IX Item "$Params::Check::STRIP_LEADING_DASHES" +.ie n .IP $Params::Check::NO_DUPLICATES 4 +.el .IP \f(CW$Params::Check::NO_DUPLICATES\fR 4 +.IX Item "$Params::Check::NO_DUPLICATES" +.ie n .IP $Params::Check::PRESERVE_CASE 4 +.el .IP \f(CW$Params::Check::PRESERVE_CASE\fR 4 +.IX Item "$Params::Check::PRESERVE_CASE" +.ie n .IP $Params::Check::ONLY_ALLOW_DEFINED 4 +.el .IP \f(CW$Params::Check::ONLY_ALLOW_DEFINED\fR 4 +.IX Item "$Params::Check::ONLY_ALLOW_DEFINED" +.ie n .IP $Params::Check::SANITY_CHECK_TEMPLATE 4 +.el .IP \f(CW$Params::Check::SANITY_CHECK_TEMPLATE\fR 4 +.IX Item "$Params::Check::SANITY_CHECK_TEMPLATE" +.ie n .IP $Params::Check::WARNINGS_FATAL 4 +.el .IP \f(CW$Params::Check::WARNINGS_FATAL\fR 4 +.IX Item "$Params::Check::WARNINGS_FATAL" +.ie n .IP $Params::Check::CALLER_DEPTH 4 +.el .IP \f(CW$Params::Check::CALLER_DEPTH\fR 4 +.IX Item "$Params::Check::CALLER_DEPTH" +.RE +.RS 4 +.RE +.IP Acknowledgements 4 +.IX Item "Acknowledgements" +.IP "BUG REPORTS" 4 +.IX Item "BUG REPORTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Parse::CPAN::Meta \- Parse META.yml and META.json CPAN metadata files" +.IX Subsection "Parse::CPAN::Meta - Parse META.yml and META.json CPAN metadata files" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP load_file 4 +.IX Item "load_file" +.IP load_yaml_string 4 +.IX Item "load_yaml_string" +.IP load_json_string 4 +.IX Item "load_json_string" +.IP load_string 4 +.IX Item "load_string" +.IP yaml_backend 4 +.IX Item "yaml_backend" +.IP json_backend 4 +.IX Item "json_backend" +.IP json_decoder 4 +.IX Item "json_decoder" +.RE +.RS 4 +.RE +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP Load 4 +.IX Item "Load" +.IP LoadFile 4 +.IX Item "LoadFile" +.RE +.RS 4 +.RE +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.RS 4 +.IP CPAN_META_JSON_DECODER 4 +.IX Item "CPAN_META_JSON_DECODER" +.IP CPAN_META_JSON_BACKEND 4 +.IX Item "CPAN_META_JSON_BACKEND" +.IP PERL_JSON_BACKEND 4 +.IX Item "PERL_JSON_BACKEND" +.IP PERL_YAML_BACKEND 4 +.IX Item "PERL_YAML_BACKEND" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Perl::OSType \- Map Perl operating system names to generic types" +.IX Subsection "Perl::OSType - Map Perl operating system names to generic types" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.RS 4 +.IP \fBos_type()\fR 4 +.IX Item "os_type()" +.IP \fBis_os_type()\fR 4 +.IX Item "is_os_type()" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.RS 4 +.IP "Bugs / Feature Requests" 4 +.IX Item "Bugs / Feature Requests" +.IP "Source Code" 4 +.IX Item "Source Code" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "PerlIO \- On demand loader for PerlIO layers and root of PerlIO::* name space" +.IX Subsection "PerlIO - On demand loader for PerlIO layers and root of PerlIO::* name space" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Layers 4 +.IX Item "Layers" +.PD +:unix, :stdio, :perlio, :crlf, :utf8, :bytes, :raw, :pop +.IP "Custom Layers" 4 +.IX Item "Custom Layers" +:encoding, :mmap, :via, :scalar +.IP "Alternatives to raw" 4 +.IX Item "Alternatives to raw" +.PD 0 +.IP "Defaults and how to override them" 4 +.IX Item "Defaults and how to override them" +.IP "Querying the layers of filehandles" 4 +.IX Item "Querying the layers of filehandles" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "PerlIO::encoding \- encoding layer" +.IX Subsection "PerlIO::encoding - encoding layer" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "PerlIO::mmap \- Memory mapped IO" +.IX Subsection "PerlIO::mmap - Memory mapped IO" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "IMPLEMENTATION NOTE" 4 +.IX Item "IMPLEMENTATION NOTE" +.PD +.SS "PerlIO::scalar \- in-memory IO, scalar IO" +.IX Subsection "PerlIO::scalar - in-memory IO, scalar IO" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "IMPLEMENTATION NOTE" 4 +.IX Item "IMPLEMENTATION NOTE" +.PD +.SS "PerlIO::via \- Helper class for PerlIO layers implemented in perl" +.IX Subsection "PerlIO::via - Helper class for PerlIO layers implemented in perl" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "EXPECTED METHODS" 4 +.IX Item "EXPECTED METHODS" +.PD +\&\f(CW$class\fR\->PUSHED([$mode,[$fh]]), \f(CW$obj\fR\->POPPED([$fh]), +\&\f(CW$obj\fR\->UTF8($belowFlag,[$fh]), \f(CW$obj\fR\->OPEN($path,$mode,[$fh]), +\&\f(CW$obj\fR\->BINMODE([$fh]), \f(CW$obj\fR\->FDOPEN($fd,[$fh]), +\&\f(CW$obj\fR\->SYSOPEN($path,$imode,$perm,[$fh]), \f(CW$obj\fR\->FILENO($fh), +\&\f(CW$obj\fR\->READ($buffer,$len,$fh), \f(CW$obj\fR\->WRITE($buffer,$fh), \f(CW$obj\fR\->FILL($fh), +\&\f(CW$obj\fR\->CLOSE($fh), \f(CW$obj\fR\->SEEK($posn,$whence,$fh), \f(CW$obj\fR\->TELL($fh), +\&\f(CW$obj\fR\->UNREAD($buffer,$fh), \f(CW$obj\fR\->FLUSH($fh), \f(CW$obj\fR\->SETLINEBUF($fh), +\&\f(CW$obj\fR\->CLEARERR($fh), \f(CW$obj\fR\->ERROR($fh), \f(CW$obj\fR\->EOF($fh) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Example \- a Hexadecimal Handle" 4 +.IX Item "Example - a Hexadecimal Handle" +.RE +.RS 4 +.RE +.PD +.SS "PerlIO::via::QuotedPrint \- PerlIO layer for quoted-printable strings" +.IX Subsection "PerlIO::via::QuotedPrint - PerlIO layer for quoted-printable strings" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP FEEDBACK 4 +.IX Item "FEEDBACK" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AVAILABILITY 4 +.IX Item "AVAILABILITY" +.IP INSTALLATION 4 +.IX Item "INSTALLATION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Pod::Checker \- check pod documents for syntax errors" +.IX Subsection "Pod::Checker - check pod documents for syntax errors" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP OPTIONS/ARGUMENTS 4 +.IX Item "OPTIONS/ARGUMENTS" +.RS 4 +.IP \fBpodchecker()\fR 4 +.IX Item "podchecker()" +.PD +\&\fB\-warnings\fR => \fIval\fR, \fB\-quiet\fR => \fIval\fR +.RE +.RS 4 +.RE +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.RS 4 +.IP Errors 4 +.IX Item "Errors" +.PD +empty =headn, =over on line \fIN\fR without closing =back, You forgot a +\&'=back' before '=head\fIN\fR', =over is the last thing in the document?!, +\&'=item' outside of any '=over', =back without =over, Can't have a 0 in +=over \fIN\fR, =over should be: '=over' or '=over positive_number', =begin +\&\fITARGET\fR without matching =end \fITARGET\fR, =begin without a target?, =end +\&\fITARGET\fR without matching =begin, '=end' without a target?, '=end +\&\fITARGET\fR' is invalid, =end \fICONTENT\fR doesn't match =begin \fITARGET\fR, =for +without a target?, unresolved internal link \fINAME\fR, Unknown directive: +\&\fICMD\fR, Deleting unknown formatting code \fISEQ\fR, Unterminated +\&\fISEQ\fR<> sequence, An E<...> surrounding strange content, +An empty E<>, An empty \f(CW\*(C`L<>\*(C'\fR, An empty X<>, +Spurious text after =pod / =cut, =back doesn't take any parameters, but you +said =back \fIARGUMENT\fR, =pod directives shouldn't be over one line long! +Ignoring all \fIN\fR lines of content, =cut found outside a pod block, Invalid +=encoding syntax: \fICONTENT\fR +.IP Warnings 4 +.IX Item "Warnings" +nested commands \fICMD\fR<...\fICMD\fR<...>...>, multiple +occurrences (\fIN\fR) of link target \fIname\fR, line containing nothing but +whitespace in paragraph, =item has no contents, You can't have =items (as +at line \fIN\fR) unless the first thing after the =over is an =item, Expected +\&'=item \fIEXPECTED VALUE\fR', Expected '=item *', Possible =item type +mismatch: '\fIx\fR' found leading a supposed definition =item, You have '=item +x' instead of the expected '=item \fIN\fR', Unknown E content in +E<\fICONTENT\fR>, empty =over/=back block, empty section in previous +paragraph, Verbatim paragraph in NAME section, =head\fIn\fR without preceding +higher level, A non-empty Z<> +.IP Hyperlinks 4 +.IX Item "Hyperlinks" +ignoring leading/trailing whitespace in link, alternative text/node '%s' +contains non-escaped | or / +.RE +.RS 4 +.RE +.IP "RETURN VALUE" 4 +.IX Item "RETURN VALUE" +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP SCRIPTS 4 +.IX Item "SCRIPTS" +.IP INTERFACE 4 +.IX Item "INTERFACE" +.PD +end_B, end_C, end_Document, end_F, end_I, end_L, end_Para, end_S, end_X, +end_fcode, end_for, end_head, end_head1, end_head2, end_head3, end_head4, +end_item, end_item_bullet, end_item_number, end_item_text, +handle_pod_and_cut, handle_text, handle_whiteline, hyperlink, scream, +start_B, start_C, start_Data, start_F, start_I, start_L, start_Para, +start_S, start_Verbatim, start_X, start_fcode, start_for, start_head, +start_head1, start_head2, start_head3, start_head4, start_item_bullet, +start_item_number, start_item_text, start_over, start_over_block, +start_over_bullet, start_over_empty, start_over_number, start_over_text, +whine +.PP +\&\f(CW\*(C`Pod::Checker\->new( %options )\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->poderror( @args )\*(C'\fR, \f(CW\*(C`$checker\->poderror( {%opts}, +@args )\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->num_errors()\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->num_warnings()\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->name()\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->node()\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->idx()\*(C'\fR +.PP +\&\f(CW\*(C`$checker\->hyperlinks()\*(C'\fR +.PP +\&\fBline()\fR +.PP +\&\fBtype()\fR +.PP +\&\fBpage()\fR +.PP +\&\fBnode()\fR +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "Pod::Escapes \- for resolving Pod E<...> sequences" +.IX Subsection "Pod::Escapes - for resolving Pod E<...> sequences" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP GOODIES 4 +.IX Item "GOODIES" +.PD +e2char($e_content), e2charnum($e_content), \f(CW$Name2character\fR{\fIname\fR}, +\&\f(CW$Name2character_number\fR{\fIname\fR}, \f(CW$Latin1Code_to_fallback\fR{\fIinteger\fR}, +\&\f(CW$Latin1Char_to_fallback\fR{\fIcharacter\fR}, \f(CW$Code2USASCII\fR{\fIinteger\fR} +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP REPOSITORY 4 +.IX Item "REPOSITORY" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Html \- module to convert pod files to HTML" +.IX Subsection "Pod::Html - module to convert pod files to HTML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.IP pod2html 4 +.IX Item "pod2html" +.PD +backlink, cachedir, css, flush, header, help, htmldir, htmlroot, index, +infile, outfile, poderrors, podpath, podroot, quiet, recurse, title, +verbose +.IP "Formerly Exported Auxiliary Functions" 4 +.IX Item "Formerly Exported Auxiliary Functions" +\&\f(CWhtmlify()\fR (by default), \f(CWanchorify()\fR (upon request), +\&\f(CWrelativize_url()\fR (upon request) +.RE +.RS 4 +.RE +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Pod::Html::Util \- helper functions for Pod-Html" +.IX Subsection "Pod::Html::Util - helper functions for Pod-Html" +.IP SUBROUTINES 4 +.IX Item "SUBROUTINES" +.PD 0 +.ie n .IP process_command_line() 4 +.el .IP \f(CWprocess_command_line()\fR 4 +.IX Item "process_command_line()" +.ie n .IP usage() 4 +.el .IP \f(CWusage()\fR 4 +.IX Item "usage()" +.ie n .IP unixify() 4 +.el .IP \f(CWunixify()\fR 4 +.IX Item "unixify()" +.ie n .IP relativize_url() 4 +.el .IP \f(CWrelativize_url()\fR 4 +.IX Item "relativize_url()" +.ie n .IP html_escape() 4 +.el .IP \f(CWhtml_escape()\fR 4 +.IX Item "html_escape()" +.ie n .IP htmlify() 4 +.el .IP \f(CWhtmlify()\fR 4 +.IX Item "htmlify()" +.ie n .IP anchorify() 4 +.el .IP \f(CWanchorify()\fR 4 +.IX Item "anchorify()" +.ie n .IP trim_leading_whitespace() 4 +.el .IP \f(CWtrim_leading_whitespace()\fR 4 +.IX Item "trim_leading_whitespace()" +.PD +.SS "Pod::Man \- Convert POD data to formatted *roff input" +.IX Subsection "Pod::Man - Convert POD data to formatted *roff input" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CLASS METHODS" 4 +.IX Item "CLASS METHODS" +.PD +new(ARGS), center, date, encoding, errors, fixed, fixedbold, fixeditalic, +fixedbolditalic, guesswork, functions, manref, quoting, variables, +language, lquote, rquote, name, nourls, quotes, release, section, stderr, +utf8 +.IP "INSTANCE METHODS" 4 +.IX Item "INSTANCE METHODS" +output_fh(FH), output_string(REF), parse_file(PATH), parse_from_file(INPUT, +OUTPUT), parse_from_filehandle(FH, OUTPUT), parse_lines(LINES[, ...[, +undef]]), parse_string_document(INPUT) +.IP ENCODING 4 +.IX Item "ENCODING" +.RS 4 +.PD 0 +.IP History 4 +.IX Item "History" +.IP "Testing results" 4 +.IX Item "Testing results" +.PD +[1], [2], [3] +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +roff font should be 1 or 2 chars, not "%s", Invalid errors setting "%s", +Invalid quote specification "%s", POD document had syntax errors +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +PERL_CORE, POD_MAN_DATE, SOURCE_DATE_EPOCH +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.RS 4 +.IP "Sentence spacing" 4 +.IX Item "Sentence spacing" +.IP Hyphens 4 +.IX Item "Hyphens" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::ParseLink \- Parse an L<> formatting code in POD text" +.IX Subsection "Pod::ParseLink - Parse an L<> formatting code in POD text" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::Perldoc \- Look up Perl documentation in Pod format." +.IX Subsection "Pod::Perldoc - Look up Perl documentation in Pod format." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::BaseTo \- Base for Pod::Perldoc formatters" +.IX Subsection "Pod::Perldoc::BaseTo - Base for Pod::Perldoc formatters" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::GetOptsOO \- Customized option parser for Pod::Perldoc" +.IX Subsection "Pod::Perldoc::GetOptsOO - Customized option parser for Pod::Perldoc" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Call Pod::Perldoc::GetOptsOO::getopts($object, \e@ARGV, \f(CW$truth\fR), Given \-n, +if there's a opt_n_with, it'll call \f(CW$object\fR\->opt_n_with( ARGUMENT ) +(e.g., "\-n foo" => \f(CW$object\fR\->opt_n_with('foo'). Ditto "\-nfoo"), Otherwise +(given \-n) if there's an opt_n, we'll call it \f(CW$object\fR\->opt_n($truth) +(Truth defaults to 1), Otherwise we try calling +\&\f(CW$object\fR\->handle_unknown_option('n') (and we increment the error count by +the return value of it), If there's no handle_unknown_option, then we just +warn, and then increment the error counter +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToANSI \- render Pod with ANSI color escapes" +.IX Subsection "Pod::Perldoc::ToANSI - render Pod with ANSI color escapes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToChecker \- let Perldoc check Pod for errors" +.IX Subsection "Pod::Perldoc::ToChecker - let Perldoc check Pod for errors" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToMan \- let Perldoc render Pod as man pages" +.IX Subsection "Pod::Perldoc::ToMan - let Perldoc render Pod as man pages" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToNroff \- let Perldoc convert Pod to nroff" +.IX Subsection "Pod::Perldoc::ToNroff - let Perldoc convert Pod to nroff" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToPod \- let Perldoc render Pod as ... Pod!" +.IX Subsection "Pod::Perldoc::ToPod - let Perldoc render Pod as ... Pod!" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToRtf \- let Perldoc render Pod as RTF" +.IX Subsection "Pod::Perldoc::ToRtf - let Perldoc render Pod as RTF" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToTerm \- render Pod with terminal escapes" +.IX Subsection "Pod::Perldoc::ToTerm - render Pod with terminal escapes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "PAGER FORMATTING" 4 +.IX Item "PAGER FORMATTING" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToText \- let Perldoc render Pod as plaintext" +.IX Subsection "Pod::Perldoc::ToText - let Perldoc render Pod as plaintext" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToTk \- let Perldoc use Tk::Pod to render Pod" +.IX Subsection "Pod::Perldoc::ToTk - let Perldoc use Tk::Pod to render Pod" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Perldoc::ToXml \- let Perldoc render Pod as XML" +.IX Subsection "Pod::Perldoc::ToXml - let Perldoc render Pod as XML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Pod::Simple \- framework for parsing Pod" +.IX Subsection "Pod::Simple - framework for parsing Pod" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "MAIN METHODS" 4 +.IX Item "MAIN METHODS" +.PD +\&\f(CW\*(C`$parser = \fR\f(CISomeClass\fR\f(CW\->new();\*(C'\fR, \f(CW\*(C`$parser\->output_fh( *OUT );\*(C'\fR, +\&\f(CW\*(C`$parser\->output_string( \e$somestring );\*(C'\fR, \f(CW\*(C`$parser\->parse_file( +\&\fR\f(CI$some_filename\fR\f(CW );\*(C'\fR, \f(CW\*(C`$parser\->parse_file( *INPUT_FH );\*(C'\fR, \f(CW\*(C`$parser\->parse_string_document( \fR\f(CI$all_content\fR\f(CW );\*(C'\fR, \f(CW\*(C`$parser\->parse_lines( \fR\f(CI...@lines...\fR\f(CW, undef );\*(C'\fR, \f(CW\*(C`$parser\->content_seen\*(C'\fR, \f(CW\*(C`\fR\f(CISomeClass\fR\f(CW\->filter( \fR\f(CI$filename\fR\f(CW );\*(C'\fR, \f(CW\*(C`\fR\f(CISomeClass\fR\f(CW\->filter( \fR\f(CI*INPUT_FH\fR\f(CW );\*(C'\fR, \f(CW\*(C`\fR\f(CISomeClass\fR\f(CW\->filter( +\&\fR\f(CI\e$document_content\fR\f(CW );\*(C'\fR +.IP "SECONDARY METHODS" 4 +.IX Item "SECONDARY METHODS" +\&\f(CW\*(C`$parser\->parse_characters( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->no_whining( +\&\fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->no_errata_section( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->complain_stderr( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->source_filename\*(C'\fR, \f(CW\*(C`$parser\->doc_has_started\*(C'\fR, \f(CW\*(C`$parser\->source_dead\*(C'\fR, \f(CW\*(C`$parser\->strip_verbatim_indent( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->expand_verbatim_tabs( \fR\f(CIn\fR\f(CW )\*(C'\fR +.IP "TERTIARY METHODS" 4 +.IX Item "TERTIARY METHODS" +\&\f(CW\*(C`$parser\->abandon_output_fh()\*(C'\fR, \f(CW\*(C`$parser\->abandon_output_string()\*(C'\fR, \f(CW\*(C`$parser\->accept_code( @codes )\*(C'\fR, \f(CW\*(C`$parser\->accept_codes( +@codes )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_data( +@directives )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_processed( @directives )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_verbatim( @directives )\*(C'\fR, \f(CW\*(C`$parser\->accept_target( @targets )\*(C'\fR, \f(CW\*(C`$parser\->accept_target_as_text( @targets )\*(C'\fR, \f(CW\*(C`$parser\->accept_targets( @targets )\*(C'\fR, \f(CW\*(C`$parser\->accept_targets_as_text( @targets )\*(C'\fR, \f(CW\*(C`$parser\->any_errata_seen()\*(C'\fR, \f(CW\*(C`$parser\->errata_seen()\*(C'\fR, \f(CW\*(C`$parser\->detected_encoding()\*(C'\fR, \f(CW\*(C`$parser\->encoding()\*(C'\fR, \f(CW\*(C`$parser\->parse_from_file( $source, +$to )\*(C'\fR, \f(CW\*(C`$parser\->scream( @error_messages )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_code( @codes )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_codes( @codes )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_directive( @directives )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_directives( @directives )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_target( @targets )\*(C'\fR, \f(CW\*(C`$parser\->unaccept_targets( @targets )\*(C'\fR, \f(CW\*(C`$parser\->version_report()\*(C'\fR, \f(CW\*(C`$parser\->whine( +@error_messages )\*(C'\fR +.IX Xref "abandon_output_fh abandon_output_string accept_code accept_codes accept_directive_as_data accept_directive_as_processed accept_directive_as_verbatim accept_target accept_target_as_text accept_targets accept_targets_as_text any_errata_seen errata_seen detected_encoding encoding parse_from_file scream unaccept_code unaccept_codes unaccept_directive unaccept_directives unaccept_target unaccept_targets version_report whine" +.IP ENCODING 4 +.IX Item "ENCODING" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR, Karl Williamson \f(CW\*(C`khw@cpan.org\*(C'\fR, +Gabor Szabo \f(CW\*(C`szabgab@gmail.com\*(C'\fR, Shawn H Corey \f(CW\*(C`SHCOREY at cpan.org\*(C'\fR +.SS "Pod::Simple::Checker \-\- check the Pod syntax of a document" +.IX Subsection "Pod::Simple::Checker -- check the Pod syntax of a document" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::Debug \-\- put Pod::Simple into trace/debug mode" +.IX Subsection "Pod::Simple::Debug -- put Pod::Simple into trace/debug mode" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP GUTS 4 +.IX Item "GUTS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::DumpAsText \-\- dump Pod-parsing events as text" +.IX Subsection "Pod::Simple::DumpAsText -- dump Pod-parsing events as text" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::DumpAsXML \-\- turn Pod into XML" +.IX Subsection "Pod::Simple::DumpAsXML -- turn Pod into XML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::HTML \- convert Pod to HTML" +.IX Subsection "Pod::Simple::HTML - convert Pod to HTML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CALLING FROM THE COMMAND LINE" 4 +.IX Item "CALLING FROM THE COMMAND LINE" +.IP "CALLING FROM PERL" 4 +.IX Item "CALLING FROM PERL" +.RS 4 +.IP "Minimal code" 4 +.IX Item "Minimal code" +.IP "More detailed example" 4 +.IX Item "More detailed example" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP html_css 4 +.IX Item "html_css" +.IP html_javascript 4 +.IX Item "html_javascript" +.IP title_prefix 4 +.IX Item "title_prefix" +.IP title_postfix 4 +.IX Item "title_postfix" +.IP html_header_before_title 4 +.IX Item "html_header_before_title" +.IP top_anchor 4 +.IX Item "top_anchor" +.IP html_h_level 4 +.IX Item "html_h_level" +.IP index 4 +.IX Item "index" +.IP html_header_after_title 4 +.IX Item "html_header_after_title" +.IP html_footer 4 +.IX Item "html_footer" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::HTMLBatch \- convert several Pod files to several HTML files" +.IX Subsection "Pod::Simple::HTMLBatch - convert several Pod files to several HTML files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "FROM THE COMMAND LINE" 4 +.IX Item "FROM THE COMMAND LINE" +.RE +.RS 4 +.RE +.IP "MAIN METHODS" 4 +.IX Item "MAIN METHODS" +.PD +\&\f(CW$batchconv\fR = Pod::Simple::HTMLBatch\->new;, \f(CW$batchconv\fR\->batch_convert( +\&\fIindirs\fR, \fIoutdir\fR );, \f(CW$batchconv\fR\->batch_convert( undef , ...);, +\&\f(CW$batchconv\fR\->batch_convert( q{@INC}, ...);, \f(CW$batchconv\fR\->batch_convert( +\&\e@dirs , ...);, \f(CW$batchconv\fR\->batch_convert( "somedir" , ...);, +\&\f(CW$batchconv\fR\->batch_convert( 'somedir:someother:also' , ...);, +\&\f(CW$batchconv\fR\->batch_convert( ... , undef );, \f(CW$batchconv\fR\->batch_convert( ... , +\&'somedir' ); +.RS 4 +.IP "ACCESSOR METHODS" 4 +.IX Item "ACCESSOR METHODS" +\&\f(CW$batchconv\fR\->verbose( \fInonnegative_integer\fR );, \f(CW$batchconv\fR\->index( +\&\fItrue-or-false\fR );, \f(CW$batchconv\fR\->contents_file( \fIfilename\fR );, +\&\f(CW$batchconv\fR\->contents_page_start( \fIHTML_string\fR );, +\&\f(CW$batchconv\fR\->contents_page_end( \fIHTML_string\fR );, \f(CW$batchconv\fR\->add_css( \f(CW$url\fR +);, \f(CW$batchconv\fR\->add_javascript( \f(CW$url\fR );, \f(CW$batchconv\fR\->css_flurry( +\&\fItrue-or-false\fR );, \f(CW$batchconv\fR\->javascript_flurry( \fItrue-or-false\fR );, +\&\f(CW$batchconv\fR\->no_contents_links( \fItrue-or-false\fR );, +\&\f(CW$batchconv\fR\->html_render_class( \fIclassname\fR );, \f(CW$batchconv\fR\->search_class( +\&\fIclassname\fR ); +.RE +.RS 4 +.RE +.IP "NOTES ON CUSTOMIZATION" 4 +.IX Item "NOTES ON CUSTOMIZATION" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::JustPod \-\- just the Pod, the whole Pod, and nothing but the Pod" +.IX Subsection "Pod::Simple::JustPod -- just the Pod, the whole Pod, and nothing but the Pod" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::LinkSection \-\- represent ""section"" attributes of L codes" +.IX Subsection "Pod::Simple::LinkSection -- represent ""section"" attributes of L codes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::Methody \-\- turn Pod::Simple events into method calls" +.IX Subsection "Pod::Simple::Methody -- turn Pod::Simple events into method calls" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "METHOD CALLING" 4 +.IX Item "METHOD CALLING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::PullParser \-\- a pull-parser interface to parsing Pod" +.IX Subsection "Pod::Simple::PullParser -- a pull-parser interface to parsing Pod" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +my \f(CW$token\fR = \f(CW$parser\fR\->get_token, \f(CW$parser\fR\->unget_token( \f(CW$token\fR ), +\&\f(CW$parser\fR\->unget_token( \f(CW$token1\fR, \f(CW$token2\fR, ... ), \f(CW$parser\fR\->set_source( +\&\f(CW$filename\fR ), \f(CW$parser\fR\->set_source( \f(CW$filehandle_object\fR ), +\&\f(CW$parser\fR\->set_source( \e$document_source ), \f(CW$parser\fR\->set_source( +\&\e@document_lines ), \f(CW$parser\fR\->parse_file(...), +\&\f(CW$parser\fR\->parse_string_document(...), \f(CW$parser\fR\->filter(...), +\&\f(CW$parser\fR\->parse_from_file(...), my \f(CW$title_string\fR = \f(CW$parser\fR\->get_title, my +\&\f(CW$title_string\fR = \f(CW$parser\fR\->get_short_title, \f(CW$author_name\fR = +\&\f(CW$parser\fR\->get_author, \f(CW$description_name\fR = \f(CW$parser\fR\->get_description, +\&\f(CW$version_block\fR = \f(CW$parser\fR\->get_version +.IP NOTE 4 +.IX Item "NOTE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::PullParserEndToken \-\- end-tokens from Pod::Simple::PullParser" +.IX Subsection "Pod::Simple::PullParserEndToken -- end-tokens from Pod::Simple::PullParser" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$token\fR\->tagname, \f(CW$token\fR\->tagname(\fIsomestring\fR), \f(CW$token\fR\->tag(...), +\&\f(CW$token\fR\->is_tag(\fIsomestring\fR) or \f(CW$token\fR\->is_tagname(\fIsomestring\fR) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::PullParserStartToken \-\- start-tokens from Pod::Simple::PullParser" +.IX Subsection "Pod::Simple::PullParserStartToken -- start-tokens from Pod::Simple::PullParser" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$token\fR\->tagname, \f(CW$token\fR\->tagname(\fIsomestring\fR), \f(CW$token\fR\->tag(...), +\&\f(CW$token\fR\->is_tag(\fIsomestring\fR) or \f(CW$token\fR\->is_tagname(\fIsomestring\fR), +\&\f(CW$token\fR\->attr(\fIattrname\fR), \f(CW$token\fR\->attr(\fIattrname\fR, \fInewvalue\fR), +\&\f(CW$token\fR\->attr_hash +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::PullParserTextToken \-\- text-tokens from Pod::Simple::PullParser" +.IX Subsection "Pod::Simple::PullParserTextToken -- text-tokens from Pod::Simple::PullParser" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$token\fR\->text, \f(CW$token\fR\->text(\fIsomestring\fR), \f(CW$token\fR\->\fBtext_r()\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::PullParserToken \-\- tokens from Pod::Simple::PullParser" +.IX Subsection "Pod::Simple::PullParserToken -- tokens from Pod::Simple::PullParser" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW$token\fR\->type, \f(CW$token\fR\->is_start, \f(CW$token\fR\->is_text, \f(CW$token\fR\->is_end, +\&\f(CW$token\fR\->dump +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::RTF \-\- format Pod as RTF" +.IX Subsection "Pod::Simple::RTF -- format Pod as RTF" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FORMAT CONTROL ATTRIBUTES" 4 +.IX Item "FORMAT CONTROL ATTRIBUTES" +.PD +\&\f(CW$parser\fR\->head1_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->head2_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->head3_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->head4_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->codeblock_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->header_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->normal_halfpoint_size( \fIhalfpoint_integer\fR );, +\&\f(CW$parser\fR\->no_proofing_exemptions( \fItrue_or_false\fR );, \f(CW$parser\fR\->doc_lang( +\&\fImicrosoft_decimal_language_code\fR ) +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::Search \- find POD documents in directory trees" +.IX Subsection "Pod::Simple::Search - find POD documents in directory trees" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTRUCTOR 4 +.IX Item "CONSTRUCTOR" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$search\fR\->inc( \fItrue-or-false\fR );, \f(CW$search\fR\->verbose( \fInonnegative-number\fR +);, \f(CW$search\fR\->limit_glob( \fIsome-glob-string\fR );, \f(CW$search\fR\->callback( +\&\fI\e&some_routine\fR );, \f(CW$search\fR\->laborious( \fItrue-or-false\fR );, +\&\f(CW$search\fR\->recurse( \fItrue-or-false\fR );, \f(CW$search\fR\->shadows( \fItrue-or-false\fR +);, \f(CW$search\fR\->is_case_insensitive( \fItrue-or-false\fR );, \f(CW$search\fR\->limit_re( +\&\fIsome-regxp\fR );, \f(CW$search\fR\->dir_prefix( \fIsome-string-value\fR );, +\&\f(CW$search\fR\->progress( \fIsome-progress-object\fR );, \f(CW$name2path\fR = +\&\f(CW$self\fR\->name2path;, \f(CW$path2name\fR = \f(CW$self\fR\->path2name; +.IP "MAIN SEARCH METHODS" 4 +.IX Item "MAIN SEARCH METHODS" +.RS 4 +.PD 0 +.ie n .IP """$search\->survey( @directories )""" 4 +.el .IP "\f(CW$search\->survey( @directories )\fR" 4 +.IX Item "$search->survey( @directories )" +.PD +\&\f(CW\*(C`name2path\*(C'\fR, \f(CW\*(C`path2name\*(C'\fR +.ie n .IP """$search\->simplify_name( $str )""" 4 +.el .IP "\f(CW$search\->simplify_name( $str )\fR" 4 +.IX Item "$search->simplify_name( $str )" +.PD 0 +.ie n .IP """$search\->find( $pod )""" 4 +.el .IP "\f(CW$search\->find( $pod )\fR" 4 +.IX Item "$search->find( $pod )" +.ie n .IP """$search\->find( $pod, @search_dirs )""" 4 +.el .IP "\f(CW$search\->find( $pod, @search_dirs )\fR" 4 +.IX Item "$search->find( $pod, @search_dirs )" +.ie n .IP """$self\->contains_pod( $file )""" 4 +.el .IP "\f(CW$self\->contains_pod( $file )\fR" 4 +.IX Item "$self->contains_pod( $file )" +.RE +.RS 4 +.RE +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::SimpleTree \-\- parse Pod into a simple parse tree" +.IX Subsection "Pod::Simple::SimpleTree -- parse Pod into a simple parse tree" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP "Tree Contents" 4 +.IX Item "Tree Contents" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::Subclassing \-\- write a formatter as a Pod::Simple subclass" +.IX Subsection "Pod::Simple::Subclassing -- write a formatter as a Pod::Simple subclass" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Pod::Simple, Pod::Simple::Methody, Pod::Simple::PullParser, +Pod::Simple::SimpleTree +.IP Events 4 +.IX Item "Events" +\&\f(CW\*(C`$parser\->_handle_element_start( \fR\f(CIelement_name\fR\f(CW, \fR\f(CIattr_hashref\fR\f(CW )\*(C'\fR, +\&\f(CW\*(C`$parser\->_handle_element_end( \fR\f(CIelement_name\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->_handle_text( \fR\f(CItext_string\fR\f(CW )\*(C'\fR, events with an element_name +of Document, events with an element_name of Para, events with an +element_name of B, C, F, or I, events with an element_name of S, events +with an element_name of X, events with an element_name of L, events with an +element_name of E or Z, events with an element_name of Verbatim, events +with an element_name of head1 .. head4, events with an element_name of +encoding, events with an element_name of over-bullet, events with an +element_name of over-number, events with an element_name of over-text, +events with an element_name of over-block, events with an element_name of +over-empty, events with an element_name of item-bullet, events with an +element_name of item-number, events with an element_name of item-text, +events with an element_name of for, events with an element_name of Data +.IP "More Pod::Simple Methods" 4 +.IX Item "More Pod::Simple Methods" +\&\f(CW\*(C`$parser\->accept_targets( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->accept_targets_as_text( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->accept_codes( \fR\f(CICodename\fR\f(CW, \fR\f(CICodename\fR\f(CW... )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_data( \fR\f(CIdirective_name\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_verbatim( \fR\f(CIdirective_name\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->accept_directive_as_processed( \fR\f(CIdirective_name\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->nbsp_for_S( \fR\f(CIBOOLEAN\fR\f(CW );\*(C'\fR, \f(CW\*(C`$parser\->version_report()\*(C'\fR, +\&\f(CW\*(C`$parser\->pod_para_count()\*(C'\fR, \f(CW\*(C`$parser\->line_count()\*(C'\fR, \f(CW\*(C`$parser\->nix_X_codes( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->keep_encoding_directive( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->merge_text( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->code_handler( +\&\fR\f(CICODE_REF\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->cut_handler( \fR\f(CICODE_REF\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->pod_handler( \fR\f(CICODE_REF\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->whiteline_handler( +\&\fR\f(CICODE_REF\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->whine( \fR\f(CIlinenumber\fR\f(CW, \fR\f(CIcomplaint string\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->scream( \fR\f(CIlinenumber\fR\f(CW, \fR\f(CIcomplaint string\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->source_dead(1)\*(C'\fR, \f(CW\*(C`$parser\->hide_line_numbers( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->no_whining( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->no_errata_section( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->complain_stderr( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->bare_output( +\&\fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->preserve_whitespace( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR, \f(CW\*(C`$parser\->parse_empty_lists( \fR\f(CISOMEVALUE\fR\f(CW )\*(C'\fR +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::Text \-\- format Pod as plaintext" +.IX Subsection "Pod::Simple::Text -- format Pod as plaintext" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::TextContent \-\- get the text content of Pod" +.IX Subsection "Pod::Simple::TextContent -- get the text content of Pod" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::XHTML \-\- format Pod as validating XHTML" +.IX Subsection "Pod::Simple::XHTML -- format Pod as validating XHTML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Minimal code" 4 +.IX Item "Minimal code" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP perldoc_url_prefix 4 +.IX Item "perldoc_url_prefix" +.IP perldoc_url_postfix 4 +.IX Item "perldoc_url_postfix" +.IP man_url_prefix 4 +.IX Item "man_url_prefix" +.IP man_url_postfix 4 +.IX Item "man_url_postfix" +.IP "title_prefix, title_postfix" 4 +.IX Item "title_prefix, title_postfix" +.IP html_css 4 +.IX Item "html_css" +.IP html_javascript 4 +.IX Item "html_javascript" +.IP html_doctype 4 +.IX Item "html_doctype" +.IP html_charset 4 +.IX Item "html_charset" +.IP html_header_tags 4 +.IX Item "html_header_tags" +.IP html_h_level 4 +.IX Item "html_h_level" +.IP default_title 4 +.IX Item "default_title" +.IP force_title 4 +.IX Item "force_title" +.IP "html_header, html_footer" 4 +.IX Item "html_header, html_footer" +.IP index 4 +.IX Item "index" +.IP anchor_items 4 +.IX Item "anchor_items" +.IP backlink 4 +.IX Item "backlink" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP handle_text 4 +.IX Item "handle_text" +.IP handle_code 4 +.IX Item "handle_code" +.IP accept_targets_as_html 4 +.IX Item "accept_targets_as_html" +.IP resolve_pod_page_link 4 +.IX Item "resolve_pod_page_link" +.IP resolve_man_page_link 4 +.IX Item "resolve_man_page_link" +.IP idify 4 +.IX Item "idify" +.IP batch_mode_page_object_init 4 +.IX Item "batch_mode_page_object_init" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP ACKNOWLEDGEMENTS 4 +.IX Item "ACKNOWLEDGEMENTS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Simple::XMLOutStream \-\- turn Pod into XML" +.IX Subsection "Pod::Simple::XMLOutStream -- turn Pod into XML" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "ABOUT EXTENDING POD" 4 +.IX Item "ABOUT EXTENDING POD" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP "COPYRIGHT AND DISCLAIMERS" 4 +.IX Item "COPYRIGHT AND DISCLAIMERS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +Allison Randal \f(CW\*(C`allison@perl.org\*(C'\fR, Hans Dieter Pearcey \f(CW\*(C`hdp@cpan.org\*(C'\fR, +David E. Wheeler \f(CW\*(C`dwheeler@cpan.org\*(C'\fR +.SS "Pod::Text \- Convert POD data to formatted text" +.IX Subsection "Pod::Text - Convert POD data to formatted text" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Encoding 4 +.IX Item "Encoding" +.RE +.RS 4 +.RE +.IP "CLASS METHODS" 4 +.IX Item "CLASS METHODS" +.PD +new(ARGS), alt, code, encoding, errors, guesswork, quoting, indent, loose, +margin, nourls, quotes, sentence, stderr, utf8, width +.IP "INSTANCE METHODS" 4 +.IX Item "INSTANCE METHODS" +output_fh(FH), output_string(REF), parse_file(PATH), parse_from_file(INPUT, +OUTPUT), parse_from_filehandle(FH, OUTPUT), parse_lines(LINES[, ...[, +undef]]), parse_string_document(INPUT) +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +pod2text([[\-a,] [\-NNN,]] INPUT[, OUTPUT]) +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +Bizarre space in item, Item called without tag, Can't open \f(CW%s\fR for reading: +\&\f(CW%s\fR, Invalid errors setting "%s", Invalid quote specification "%s", POD +document had syntax errors +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::Text::Color \- Convert POD data to formatted color ASCII text" +.IX Subsection "Pod::Text::Color - Convert POD data to formatted color ASCII text" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::Text::Overstrike \- Convert POD data to formatted overstrike text" +.IX Subsection "Pod::Text::Overstrike - Convert POD data to formatted overstrike text" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::Text::Termcap \- Convert POD data to ASCII text with format escapes" +.IX Subsection "Pod::Text::Termcap - Convert POD data to ASCII text with format escapes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Pod::Usage \- extracts POD documentation and shows usage information" +.IX Subsection "Pod::Usage - extracts POD documentation and shows usage information" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP ARGUMENTS 4 +.IX Item "ARGUMENTS" +.PD +\&\f(CW\*(C`\-message\*(C'\fR \fIstring\fR, \f(CW\*(C`\-msg\*(C'\fR \fIstring\fR, \f(CW\*(C`\-exitval\*(C'\fR \fIvalue\fR, \f(CW\*(C`\-verbose\*(C'\fR +\&\fIvalue\fR, \f(CW\*(C`\-sections\*(C'\fR \fIspec\fR, \f(CW\*(C`\-output\*(C'\fR \fIhandle\fR, \f(CW\*(C`\-input\*(C'\fR \fIhandle\fR, +\&\f(CW\*(C`\-pathlist\*(C'\fR \fIstring\fR, \f(CW\*(C`\-noperldoc\*(C'\fR, \f(CW\*(C`\-perlcmd\*(C'\fR, \f(CW\*(C`\-perldoc\*(C'\fR +\&\fIpath-to-perldoc\fR, \f(CW\*(C`\-perldocopt\*(C'\fR \fIstring\fR +.RS 4 +.IP "Formatting base class" 4 +.IX Item "Formatting base class" +.PD 0 +.IP "Pass-through options" 4 +.IX Item "Pass-through options" +.RE +.RS 4 +.RE +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Scripts 4 +.IX Item "Scripts" +.RE +.RS 4 +.RE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.IP "Recommended Use" 4 +.IX Item "Recommended Use" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP ACKNOWLEDGMENTS 4 +.IX Item "ACKNOWLEDGMENTS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "SDBM_File \- Tied access to sdbm files" +.IX Subsection "SDBM_File - Tied access to sdbm files" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Tie 4 +.IX Item "Tie" +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.RS 4 +.ie n .IP """sdbm store returned \-1, errno 22, key ""..."" at ...""" 4 +.el .IP "\f(CWsdbm store returned \-1, errno 22, key ""..."" at ...\fR" 4 +.IX Item "sdbm store returned -1, errno 22, key ""..."" at ..." +.RE +.RS 4 +.RE +.IP "SECURITY WARNING" 4 +.IX Item "SECURITY WARNING" +.IP "BUGS AND WARNINGS" 4 +.IX Item "BUGS AND WARNINGS" +.PD +.SS "Safe \- Compile and execute code in restricted compartments" +.IX Subsection "Safe - Compile and execute code in restricted compartments" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +a new namespace, an operator mask +.IP WARNING 4 +.IX Item "WARNING" +.PD 0 +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "permit (OP, ...)" 4 +.IX Item "permit (OP, ...)" +.IP "permit_only (OP, ...)" 4 +.IX Item "permit_only (OP, ...)" +.IP "deny (OP, ...)" 4 +.IX Item "deny (OP, ...)" +.IP "deny_only (OP, ...)" 4 +.IX Item "deny_only (OP, ...)" +.IP "trap (OP, ...), untrap (OP, ...)" 4 +.IX Item "trap (OP, ...), untrap (OP, ...)" +.IP "share (NAME, ...)" 4 +.IX Item "share (NAME, ...)" +.IP "share_from (PACKAGE, ARRAYREF)" 4 +.IX Item "share_from (PACKAGE, ARRAYREF)" +.IP "varglob (VARNAME)" 4 +.IX Item "varglob (VARNAME)" +.IP "reval (STRING, STRICT)" 4 +.IX Item "reval (STRING, STRICT)" +.IP "rdo (FILENAME)" 4 +.IX Item "rdo (FILENAME)" +.IP "root (NAMESPACE)" 4 +.IX Item "root (NAMESPACE)" +.IP "mask (MASK)" 4 +.IX Item "mask (MASK)" +.IP "wrap_code_ref (CODEREF)" 4 +.IX Item "wrap_code_ref (CODEREF)" +.IP "wrap_code_refs_within (...)" 4 +.IX Item "wrap_code_refs_within (...)" +.RE +.RS 4 +.RE +.IP RISKS 4 +.IX Item "RISKS" +.PD +Memory, CPU, Snooping, Signals, State Changes +.IP AUTHOR 4 +.IX Item "AUTHOR" +.SS "Scalar::Util \- A selection of general-utility scalar subroutines" +.IX Subsection "Scalar::Util - A selection of general-utility scalar subroutines" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "Core Perl ""builtin"" Functions" 4 +.el .IP "Core Perl \f(CWbuiltin\fR Functions" 4 +.IX Item "Core Perl builtin Functions" +.RE +.RS 4 +.RE +.IP "FUNCTIONS FOR REFERENCES" 4 +.IX Item "FUNCTIONS FOR REFERENCES" +.RS 4 +.IP blessed 4 +.IX Item "blessed" +.IP refaddr 4 +.IX Item "refaddr" +.IP reftype 4 +.IX Item "reftype" +.IP weaken 4 +.IX Item "weaken" +.IP unweaken 4 +.IX Item "unweaken" +.IP isweak 4 +.IX Item "isweak" +.RE +.RS 4 +.RE +.IP "OTHER FUNCTIONS" 4 +.IX Item "OTHER FUNCTIONS" +.RS 4 +.IP dualvar 4 +.IX Item "dualvar" +.IP isdual 4 +.IX Item "isdual" +.IP isvstring 4 +.IX Item "isvstring" +.IP looks_like_number 4 +.IX Item "looks_like_number" +.IP openhandle 4 +.IX Item "openhandle" +.IP readonly 4 +.IX Item "readonly" +.IP set_prototype 4 +.IX Item "set_prototype" +.IP tainted 4 +.IX Item "tainted" +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +Vstrings are not implemented in this version of perl +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Search::Dict \- look \- search for key in dictionary file" +.IX Subsection "Search::Dict - look - search for key in dictionary file" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "SelectSaver \- save and restore selected file handle" +.IX Subsection "SelectSaver - save and restore selected file handle" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "SelfLoader \- load functions only on demand" +.IX Subsection "SelfLoader - load functions only on demand" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "The _\|_DATA_\|_ token" 4 +.IX Item "The __DATA__ token" +.IP "SelfLoader autoloading" 4 +.IX Item "SelfLoader autoloading" +.IP "Autoloading and package lexicals" 4 +.IX Item "Autoloading and package lexicals" +.IP "SelfLoader and AutoLoader" 4 +.IX Item "SelfLoader and AutoLoader" +.IP "_\|_DATA_\|_, _\|_END_\|_, and the FOOBAR::DATA filehandle." 4 +.IX Item "__DATA__, __END__, and the FOOBAR::DATA filehandle." +.IP "Classes and inherited methods." 4 +.IX Item "Classes and inherited methods." +.RE +.RS 4 +.RE +.IP "Multiple packages and fully qualified subroutine names" 4 +.IX Item "Multiple packages and fully qualified subroutine names" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +a), b) +.ie n .SS "Socket, ""Socket"" \- networking constants and support functions" +.el .SS "Socket, \f(CWSocket\fP \- networking constants and support functions" +.IX Subsection "Socket, Socket - networking constants and support functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CONSTANTS 4 +.IX Item "CONSTANTS" +.IP "PF_INET, PF_INET6, PF_UNIX, ..." 4 +.IX Item "PF_INET, PF_INET6, PF_UNIX, ..." +.IP "AF_INET, AF_INET6, AF_UNIX, ..." 4 +.IX Item "AF_INET, AF_INET6, AF_UNIX, ..." +.IP "SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, ..." 4 +.IX Item "SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, ..." +.IP "SOCK_NONBLOCK. SOCK_CLOEXEC" 4 +.IX Item "SOCK_NONBLOCK. SOCK_CLOEXEC" +.IP SOL_SOCKET 4 +.IX Item "SOL_SOCKET" +.IP "SO_ACCEPTCONN, SO_BROADCAST, SO_ERROR, ..." 4 +.IX Item "SO_ACCEPTCONN, SO_BROADCAST, SO_ERROR, ..." +.IP "IP_OPTIONS, IP_TOS, IP_TTL, ..." 4 +.IX Item "IP_OPTIONS, IP_TOS, IP_TTL, ..." +.IP "IP_PMTUDISC_WANT, IP_PMTUDISC_DONT, ..." 4 +.IX Item "IP_PMTUDISC_WANT, IP_PMTUDISC_DONT, ..." +.IP "IPTOS_LOWDELAY, IPTOS_THROUGHPUT, IPTOS_RELIABILITY, ..." 4 +.IX Item "IPTOS_LOWDELAY, IPTOS_THROUGHPUT, IPTOS_RELIABILITY, ..." +.IP "MSG_BCAST, MSG_OOB, MSG_TRUNC, ..." 4 +.IX Item "MSG_BCAST, MSG_OOB, MSG_TRUNC, ..." +.IP "SHUT_RD, SHUT_RDWR, SHUT_WR" 4 +.IX Item "SHUT_RD, SHUT_RDWR, SHUT_WR" +.IP "INADDR_ANY, INADDR_BROADCAST, INADDR_LOOPBACK, INADDR_NONE" 4 +.IX Item "INADDR_ANY, INADDR_BROADCAST, INADDR_LOOPBACK, INADDR_NONE" +.IP "IPPROTO_IP, IPPROTO_IPV6, IPPROTO_TCP, ..." 4 +.IX Item "IPPROTO_IP, IPPROTO_IPV6, IPPROTO_TCP, ..." +.IP "TCP_CORK, TCP_KEEPALIVE, TCP_NODELAY, ..." 4 +.IX Item "TCP_CORK, TCP_KEEPALIVE, TCP_NODELAY, ..." +.IP "IN6ADDR_ANY, IN6ADDR_LOOPBACK" 4 +.IX Item "IN6ADDR_ANY, IN6ADDR_LOOPBACK" +.IP "IPV6_ADD_MEMBERSHIP, IPV6_MTU, IPV6_V6ONLY, ..." 4 +.IX Item "IPV6_ADD_MEMBERSHIP, IPV6_MTU, IPV6_V6ONLY, ..." +.IP "STRUCTURE MANIPULATORS" 4 +.IX Item "STRUCTURE MANIPULATORS" +.ie n .IP "$family = sockaddr_family $sockaddr" 4 +.el .IP "\f(CW$family\fR = sockaddr_family \f(CW$sockaddr\fR" 4 +.IX Item "$family = sockaddr_family $sockaddr" +.ie n .IP "$sockaddr = pack_sockaddr_in $port, $ip_address" 4 +.el .IP "\f(CW$sockaddr\fR = pack_sockaddr_in \f(CW$port\fR, \f(CW$ip_address\fR" 4 +.IX Item "$sockaddr = pack_sockaddr_in $port, $ip_address" +.ie n .IP "($port, $ip_address) = unpack_sockaddr_in $sockaddr" 4 +.el .IP "($port, \f(CW$ip_address\fR) = unpack_sockaddr_in \f(CW$sockaddr\fR" 4 +.IX Item "($port, $ip_address) = unpack_sockaddr_in $sockaddr" +.ie n .IP "$sockaddr = sockaddr_in $port, $ip_address" 4 +.el .IP "\f(CW$sockaddr\fR = sockaddr_in \f(CW$port\fR, \f(CW$ip_address\fR" 4 +.IX Item "$sockaddr = sockaddr_in $port, $ip_address" +.ie n .IP "($port, $ip_address) = sockaddr_in $sockaddr" 4 +.el .IP "($port, \f(CW$ip_address\fR) = sockaddr_in \f(CW$sockaddr\fR" 4 +.IX Item "($port, $ip_address) = sockaddr_in $sockaddr" +.ie n .IP "$sockaddr = pack_sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]" 4 +.el .IP "\f(CW$sockaddr\fR = pack_sockaddr_in6 \f(CW$port\fR, \f(CW$ip6_address\fR, [$scope_id, [$flowinfo]]" 4 +.IX Item "$sockaddr = pack_sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]" +.ie n .IP "($port, $ip6_address, $scope_id, $flowinfo) = unpack_sockaddr_in6 $sockaddr" 4 +.el .IP "($port, \f(CW$ip6_address\fR, \f(CW$scope_id\fR, \f(CW$flowinfo\fR) = unpack_sockaddr_in6 \f(CW$sockaddr\fR" 4 +.IX Item "($port, $ip6_address, $scope_id, $flowinfo) = unpack_sockaddr_in6 $sockaddr" +.ie n .IP "$sockaddr = sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]" 4 +.el .IP "\f(CW$sockaddr\fR = sockaddr_in6 \f(CW$port\fR, \f(CW$ip6_address\fR, [$scope_id, [$flowinfo]]" 4 +.IX Item "$sockaddr = sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]" +.ie n .IP "($port, $ip6_address, $scope_id, $flowinfo) = sockaddr_in6 $sockaddr" 4 +.el .IP "($port, \f(CW$ip6_address\fR, \f(CW$scope_id\fR, \f(CW$flowinfo\fR) = sockaddr_in6 \f(CW$sockaddr\fR" 4 +.IX Item "($port, $ip6_address, $scope_id, $flowinfo) = sockaddr_in6 $sockaddr" +.ie n .IP "$sockaddr = pack_sockaddr_un $path" 4 +.el .IP "\f(CW$sockaddr\fR = pack_sockaddr_un \f(CW$path\fR" 4 +.IX Item "$sockaddr = pack_sockaddr_un $path" +.ie n .IP "($path) = unpack_sockaddr_un $sockaddr" 4 +.el .IP "($path) = unpack_sockaddr_un \f(CW$sockaddr\fR" 4 +.IX Item "($path) = unpack_sockaddr_un $sockaddr" +.ie n .IP "$sockaddr = sockaddr_un $path" 4 +.el .IP "\f(CW$sockaddr\fR = sockaddr_un \f(CW$path\fR" 4 +.IX Item "$sockaddr = sockaddr_un $path" +.ie n .IP "($path) = sockaddr_un $sockaddr" 4 +.el .IP "($path) = sockaddr_un \f(CW$sockaddr\fR" 4 +.IX Item "($path) = sockaddr_un $sockaddr" +.ie n .IP "$ip_mreq = pack_ip_mreq $multiaddr, $interface" 4 +.el .IP "\f(CW$ip_mreq\fR = pack_ip_mreq \f(CW$multiaddr\fR, \f(CW$interface\fR" 4 +.IX Item "$ip_mreq = pack_ip_mreq $multiaddr, $interface" +.ie n .IP "($multiaddr, $interface) = unpack_ip_mreq $ip_mreq" 4 +.el .IP "($multiaddr, \f(CW$interface\fR) = unpack_ip_mreq \f(CW$ip_mreq\fR" 4 +.IX Item "($multiaddr, $interface) = unpack_ip_mreq $ip_mreq" +.ie n .IP "$ip_mreq_source = pack_ip_mreq_source $multiaddr, $source, $interface" 4 +.el .IP "\f(CW$ip_mreq_source\fR = pack_ip_mreq_source \f(CW$multiaddr\fR, \f(CW$source\fR, \f(CW$interface\fR" 4 +.IX Item "$ip_mreq_source = pack_ip_mreq_source $multiaddr, $source, $interface" +.ie n .IP "($multiaddr, $source, $interface) = unpack_ip_mreq_source $ip_mreq" 4 +.el .IP "($multiaddr, \f(CW$source\fR, \f(CW$interface\fR) = unpack_ip_mreq_source \f(CW$ip_mreq\fR" 4 +.IX Item "($multiaddr, $source, $interface) = unpack_ip_mreq_source $ip_mreq" +.ie n .IP "$ipv6_mreq = pack_ipv6_mreq $multiaddr6, $ifindex" 4 +.el .IP "\f(CW$ipv6_mreq\fR = pack_ipv6_mreq \f(CW$multiaddr6\fR, \f(CW$ifindex\fR" 4 +.IX Item "$ipv6_mreq = pack_ipv6_mreq $multiaddr6, $ifindex" +.ie n .IP "($multiaddr6, $ifindex) = unpack_ipv6_mreq $ipv6_mreq" 4 +.el .IP "($multiaddr6, \f(CW$ifindex\fR) = unpack_ipv6_mreq \f(CW$ipv6_mreq\fR" 4 +.IX Item "($multiaddr6, $ifindex) = unpack_ipv6_mreq $ipv6_mreq" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.ie n .IP "$ip_address = inet_aton $string" 4 +.el .IP "\f(CW$ip_address\fR = inet_aton \f(CW$string\fR" 4 +.IX Item "$ip_address = inet_aton $string" +.ie n .IP "$string = inet_ntoa $ip_address" 4 +.el .IP "\f(CW$string\fR = inet_ntoa \f(CW$ip_address\fR" 4 +.IX Item "$string = inet_ntoa $ip_address" +.ie n .IP "$address = inet_pton $family, $string" 4 +.el .IP "\f(CW$address\fR = inet_pton \f(CW$family\fR, \f(CW$string\fR" 4 +.IX Item "$address = inet_pton $family, $string" +.ie n .IP "$string = inet_ntop $family, $address" 4 +.el .IP "\f(CW$string\fR = inet_ntop \f(CW$family\fR, \f(CW$address\fR" 4 +.IX Item "$string = inet_ntop $family, $address" +.ie n .IP "($err, @result) = getaddrinfo $host, $service, [$hints]" 4 +.el .IP "($err, \f(CW@result\fR) = getaddrinfo \f(CW$host\fR, \f(CW$service\fR, [$hints]" 4 +.IX Item "($err, @result) = getaddrinfo $host, $service, [$hints]" +.PD +flags => INT, family => INT, socktype => INT, protocol => INT, family => +INT, socktype => INT, protocol => INT, addr => STRING, canonname => STRING, +AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST +.ie n .IP "($err, $hostname, $servicename) = getnameinfo $sockaddr, [$flags, [$xflags]]" 4 +.el .IP "($err, \f(CW$hostname\fR, \f(CW$servicename\fR) = getnameinfo \f(CW$sockaddr\fR, [$flags, [$xflags]]" 4 +.IX Item "($err, $hostname, $servicename) = getnameinfo $sockaddr, [$flags, [$xflags]]" +NI_NUMERICHOST, NI_NUMERICSERV, NI_NAMEREQD, NI_DGRAM, NIx_NOHOST, +NIx_NOSERV +.IP "\fBgetaddrinfo()\fR / \fBgetnameinfo()\fR ERROR CONSTANTS" 4 +.IX Item "getaddrinfo() / getnameinfo() ERROR CONSTANTS" +EAI_AGAIN, EAI_BADFLAGS, EAI_FAMILY, EAI_NODATA, EAI_NONAME, EAI_SERVICE +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.RS 4 +.PD 0 +.IP "Lookup for \fBconnect()\fR" 4 +.IX Item "Lookup for connect()" +.IP "Making a human-readable string out of an address" 4 +.IX Item "Making a human-readable string out of an address" +.IP "Resolving hostnames into IP addresses" 4 +.IX Item "Resolving hostnames into IP addresses" +.IP "Accessing socket options" 4 +.IX Item "Accessing socket options" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Storable \- persistence for Perl data structures" +.IX Subsection "Storable - persistence for Perl data structures" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "MEMORY STORE" 4 +.IX Item "MEMORY STORE" +.IP "ADVISORY LOCKING" 4 +.IX Item "ADVISORY LOCKING" +.IP SPEED 4 +.IX Item "SPEED" +.IP "CANONICAL REPRESENTATION" 4 +.IX Item "CANONICAL REPRESENTATION" +.IP "CODE REFERENCES" 4 +.IX Item "CODE REFERENCES" +.IP "FORWARD COMPATIBILITY" 4 +.IX Item "FORWARD COMPATIBILITY" +.PD +utf8 data, restricted hashes, huge objects, files from future versions of +Storable +.IP "ERROR REPORTING" 4 +.IX Item "ERROR REPORTING" +.PD 0 +.IP "WIZARDS ONLY" 4 +.IX Item "WIZARDS ONLY" +.RS 4 +.IP Hooks 4 +.IX Item "Hooks" +.PD +\&\f(CW\*(C`STORABLE_freeze\*(C'\fR \fIobj\fR, \fIcloning\fR, \f(CW\*(C`STORABLE_thaw\*(C'\fR \fIobj\fR, \fIcloning\fR, +\&\fIserialized\fR, .., \f(CW\*(C`STORABLE_attach\*(C'\fR \fIclass\fR, \fIcloning\fR, \fIserialized\fR +.IP Predicates 4 +.IX Item "Predicates" +\&\f(CW\*(C`Storable::last_op_in_netorder\*(C'\fR, \f(CW\*(C`Storable::is_storing\*(C'\fR, +\&\f(CW\*(C`Storable::is_retrieving\*(C'\fR +.IP Recursion 4 +.IX Item "Recursion" +.PD 0 +.IP "Deep Cloning" 4 +.IX Item "Deep Cloning" +.RE +.RS 4 +.RE +.IP "Storable magic" 4 +.IX Item "Storable magic" +.PD +\&\f(CW$info\fR = Storable::file_magic( \f(CW$filename\fR ), \f(CW\*(C`version\*(C'\fR, \f(CW\*(C`version_nv\*(C'\fR, +\&\f(CW\*(C`major\*(C'\fR, \f(CW\*(C`minor\*(C'\fR, \f(CW\*(C`hdrsize\*(C'\fR, \f(CW\*(C`netorder\*(C'\fR, \f(CW\*(C`byteorder\*(C'\fR, \f(CW\*(C`intsize\*(C'\fR, +\&\f(CW\*(C`longsize\*(C'\fR, \f(CW\*(C`ptrsize\*(C'\fR, \f(CW\*(C`nvsize\*(C'\fR, \f(CW\*(C`file\*(C'\fR, \f(CW$info\fR = Storable::read_magic( +\&\f(CW$buffer\fR ), \f(CW$info\fR = Storable::read_magic( \f(CW$buffer\fR, \f(CW$must_be_file\fR ) +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP "SECURITY WARNING" 4 +.IX Item "SECURITY WARNING" +.IP WARNING 4 +.IX Item "WARNING" +.IP "REGULAR EXPRESSIONS" 4 +.IX Item "REGULAR EXPRESSIONS" +.IP BUGS 4 +.IX Item "BUGS" +.RS 4 +.IP "64 bit data in perl 5.6.0 and 5.6.1" 4 +.IX Item "64 bit data in perl 5.6.0 and 5.6.1" +.RE +.RS 4 +.RE +.IP CREDITS 4 +.IX Item "CREDITS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Sub::Util \- A selection of utility subroutines for subs and CODE references" +.IX Subsection "Sub::Util - A selection of utility subroutines for subs and CODE references" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.IP prototype 4 +.IX Item "prototype" +.IP set_prototype 4 +.IX Item "set_prototype" +.IP subname 4 +.IX Item "subname" +.IP set_subname 4 +.IX Item "set_subname" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Symbol \- manipulate Perl symbols and their names" +.IX Subsection "Symbol - manipulate Perl symbols and their names" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP BUGS 4 +.IX Item "BUGS" +.PD +.SS "Sys::Hostname \- Try every conceivable way to get hostname" +.IX Subsection "Sys::Hostname - Try every conceivable way to get hostname" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Sys::Syslog \- Perl interface to the UNIX \fBsyslog\fP\|(3) calls" +.IX Subsection "Sys::Syslog - Perl interface to the UNIX syslog calls" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\fBopenlog($ident, \fR\f(CB$logopt\fR\fB, \fR\f(CB$facility\fR\fB)\fR, \fBsyslog($priority, \fR\f(CB$message\fR\fB)\fR, +\&\fBsyslog($priority, \fR\f(CB$format\fR\fB, \fR\f(CB@args\fR\fB)\fR, \fBNote\fR, +\&\fBsetlogmask($mask_priority)\fR, \fBsetlogsock()\fR, \fBNote\fR, \fBcloselog()\fR +.IP "THE RULES OF SYS::SYSLOG" 4 +.IX Item "THE RULES OF SYS::SYSLOG" +.PD 0 +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP CONSTANTS 4 +.IX Item "CONSTANTS" +.RS 4 +.IP Facilities 4 +.IX Item "Facilities" +.IP Levels 4 +.IX Item "Levels" +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +\&\f(CW\*(C`Invalid argument passed to setlogsock\*(C'\fR, \f(CW\*(C`eventlog passed to setlogsock, +but no Win32 API available\*(C'\fR, \f(CW\*(C`no connection to syslog available\*(C'\fR, \f(CW\*(C`stream +passed to setlogsock, but %s is not writable\*(C'\fR, \f(CW\*(C`stream passed to +setlogsock, but could not find any device\*(C'\fR, \f(CW\*(C`tcp passed to setlogsock, but +tcp service unavailable\*(C'\fR, \f(CW\*(C`syslog: expecting argument %s\*(C'\fR, \f(CW\*(C`syslog: +invalid level/facility: %s\*(C'\fR, \f(CW\*(C`syslog: too many levels given: %s\*(C'\fR, +\&\f(CW\*(C`syslog: too many facilities given: %s\*(C'\fR, \f(CW\*(C`syslog: level must be given\*(C'\fR, +\&\f(CW\*(C`udp passed to setlogsock, but udp service unavailable\*(C'\fR, \f(CW\*(C`unix passed to +setlogsock, but path not available\*(C'\fR +.IP HISTORY 4 +.IX Item "HISTORY" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP "Other modules" 4 +.IX Item "Other modules" +.IP "Manual Pages" 4 +.IX Item "Manual Pages" +.IP RFCs 4 +.IX Item "RFCs" +.IP Articles 4 +.IX Item "Articles" +.IP "Event Log" 4 +.IX Item "Event Log" +.RE +.RS 4 +.RE +.IP "AUTHORS & ACKNOWLEDGEMENTS" 4 +.IX Item "AUTHORS & ACKNOWLEDGEMENTS" +.IP BUGS 4 +.IX Item "BUGS" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.PD +Perl Documentation, MetaCPAN, Search CPAN, AnnoCPAN: Annotated CPAN +documentation, CPAN Ratings, RT: CPAN's request tracker +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "TAP::Base \- Base class that provides common functionality to TAP::Parser and TAP::Harness" +.IX Subsection "TAP::Base - Base class that provides common functionality to TAP::Parser and TAP::Harness" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Formatter::Base \- Base class for harness output delegates" +.IX Subsection "TAP::Formatter::Base - Base class for harness output delegates" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`verbosity\*(C'\fR, \f(CW\*(C`verbose\*(C'\fR, \f(CW\*(C`timer\*(C'\fR, \f(CW\*(C`failures\*(C'\fR, \f(CW\*(C`comments\*(C'\fR, \f(CW\*(C`quiet\*(C'\fR, +\&\f(CW\*(C`really_quiet\*(C'\fR, \f(CW\*(C`silent\*(C'\fR, \f(CW\*(C`errors\*(C'\fR, \f(CW\*(C`directives\*(C'\fR, \f(CW\*(C`stdout\*(C'\fR, \f(CW\*(C`color\*(C'\fR, +\&\f(CW\*(C`jobs\*(C'\fR, \f(CW\*(C`show_count\*(C'\fR +.RE +.RS 4 +.RE +.SS "TAP::Formatter::Color \- Run Perl test scripts with color" +.IX Subsection "TAP::Formatter::Color - Run Perl test scripts with color" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Formatter::Console \- Harness output delegate for default console output" +.IX Subsection "TAP::Formatter::Console - Harness output delegate for default console output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.ie n .IP """open_test""" 4 +.el .IP \f(CWopen_test\fR 4 +.IX Item "open_test" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Formatter::Console::ParallelSession \- Harness output delegate for parallel console output" +.IX Subsection "TAP::Formatter::Console::ParallelSession - Harness output delegate for parallel console output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Formatter::Console::Session \- Harness output delegate for default console output" +.IX Subsection "TAP::Formatter::Console::Session - Harness output delegate for default console output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.ie n .IP """clear_for_close""" 4 +.el .IP \f(CWclear_for_close\fR 4 +.IX Item "clear_for_close" +.ie n .IP """close_test""" 4 +.el .IP \f(CWclose_test\fR 4 +.IX Item "close_test" +.ie n .IP """header""" 4 +.el .IP \f(CWheader\fR 4 +.IX Item "header" +.ie n .IP """result""" 4 +.el .IP \f(CWresult\fR 4 +.IX Item "result" +.PD +.SS "TAP::Formatter::File \- Harness output delegate for file output" +.IX Subsection "TAP::Formatter::File - Harness output delegate for file output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.ie n .IP """open_test""" 4 +.el .IP \f(CWopen_test\fR 4 +.IX Item "open_test" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Formatter::File::Session \- Harness output delegate for file output" +.IX Subsection "TAP::Formatter::File::Session - Harness output delegate for file output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP result 4 +.IX Item "result" +.RE +.RS 4 +.RE +.IP close_test 4 +.IX Item "close_test" +.PD +.SS "TAP::Formatter::Session \- Abstract base class for harness output delegate" +.IX Subsection "TAP::Formatter::Session - Abstract base class for harness output delegate" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`formatter\*(C'\fR, \f(CW\*(C`parser\*(C'\fR, \f(CW\*(C`name\*(C'\fR, \f(CW\*(C`show_count\*(C'\fR +.RE +.RS 4 +.RE +.SS "TAP::Harness \- Run test scripts with statistics" +.IX Subsection "TAP::Harness - Run test scripts with statistics" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`verbosity\*(C'\fR, \f(CW\*(C`timer\*(C'\fR, \f(CW\*(C`failures\*(C'\fR, \f(CW\*(C`comments\*(C'\fR, \f(CW\*(C`show_count\*(C'\fR, +\&\f(CW\*(C`normalize\*(C'\fR, \f(CW\*(C`lib\*(C'\fR, \f(CW\*(C`switches\*(C'\fR, \f(CW\*(C`test_args\*(C'\fR, \f(CW\*(C`color\*(C'\fR, \f(CW\*(C`exec\*(C'\fR, +\&\f(CW\*(C`merge\*(C'\fR, \f(CW\*(C`sources\*(C'\fR, \f(CW\*(C`aggregator_class\*(C'\fR, \f(CW\*(C`version\*(C'\fR, \f(CW\*(C`formatter_class\*(C'\fR, +\&\f(CW\*(C`multiplexer_class\*(C'\fR, \f(CW\*(C`parser_class\*(C'\fR, \f(CW\*(C`scheduler_class\*(C'\fR, \f(CW\*(C`formatter\*(C'\fR, +\&\f(CW\*(C`errors\*(C'\fR, \f(CW\*(C`directives\*(C'\fR, \f(CW\*(C`ignore_exit\*(C'\fR, \f(CW\*(C`jobs\*(C'\fR, \f(CW\*(C`rules\*(C'\fR, \f(CW\*(C`rulesfiles\*(C'\fR, +\&\f(CW\*(C`stdout\*(C'\fR, \f(CW\*(C`trap\*(C'\fR +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PP +the source name of a test to run, a reference to a [ source name, display +name ] array +.IP CONFIGURING 4 +.IX Item "CONFIGURING" +.RS 4 +.PD 0 +.IP Plugins 4 +.IX Item "Plugins" +.ie n .IP """Module::Build""" 4 +.el .IP \f(CWModule::Build\fR 4 +.IX Item "Module::Build" +.ie n .IP """ExtUtils::MakeMaker""" 4 +.el .IP \f(CWExtUtils::MakeMaker\fR 4 +.IX Item "ExtUtils::MakeMaker" +.ie n .IP """prove""" 4 +.el .IP \f(CWprove\fR 4 +.IX Item "prove" +.RE +.RS 4 +.RE +.IP "WRITING PLUGINS" 4 +.IX Item "WRITING PLUGINS" +.PD +Customize how TAP gets into the parser, Customize how TAP results are +output from the parser +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.PD 0 +.IP Methods 4 +.IX Item "Methods" +.PD +"new" in TAP::Harness, "runtests" in TAP::Harness, "summary" in TAP::Harness +.RE +.RS 4 +.RE +.IP REPLACING 4 +.IX Item "REPLACING" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Harness::Beyond, Test::Harness::Beyond \- Beyond make test" +.IX Subsection "TAP::Harness::Beyond, Test::Harness::Beyond - Beyond make test" +.IP "Beyond make test" 4 +.IX Item "Beyond make test" +.RS 4 +.PD 0 +.IP "Saved State" 4 +.IX Item "Saved State" +.IP "Parallel Testing" 4 +.IX Item "Parallel Testing" +.IP "Non-Perl Tests" 4 +.IX Item "Non-Perl Tests" +.IP "Mixing it up" 4 +.IX Item "Mixing it up" +.IP "Rolling My Own" 4 +.IX Item "Rolling My Own" +.IP "Deeper Customisation" 4 +.IX Item "Deeper Customisation" +.IP Callbacks 4 +.IX Item "Callbacks" +.IP "Parsing TAP" 4 +.IX Item "Parsing TAP" +.IP "Getting Support" 4 +.IX Item "Getting Support" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Harness::Env \- Parsing harness related environmental variables where appropriate" +.IX Subsection "TAP::Harness::Env - Parsing harness related environmental variables where appropriate" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +create( \e%args ) +.IP "ENVIRONMENTAL VARIABLES" 4 +.IX Item "ENVIRONMENTAL VARIABLES" +\&\f(CW\*(C`HARNESS_PERL_SWITCHES\*(C'\fR, \f(CW\*(C`HARNESS_VERBOSE\*(C'\fR, \f(CW\*(C`HARNESS_SUBCLASS\*(C'\fR, +\&\f(CW\*(C`HARNESS_OPTIONS\*(C'\fR, \f(CW\*(C`j<n>\*(C'\fR, \f(CW\*(C`c\*(C'\fR, \f(CW\*(C`a<file.tgz>\*(C'\fR, \f(CW\*(C`fPackage\-With\-Dashes\*(C'\fR, \f(CW\*(C`HARNESS_TIMER\*(C'\fR, \f(CW\*(C`HARNESS_COLOR\*(C'\fR, +\&\f(CW\*(C`HARNESS_IGNORE_EXIT\*(C'\fR +.ie n .SS "TAP::Object \- Base class that provides common functionality to all ""TAP::*"" modules" +.el .SS "TAP::Object \- Base class that provides common functionality to all \f(CWTAP::*\fP modules" +.IX Subsection "TAP::Object - Base class that provides common functionality to all TAP::* modules" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PD +.SS "TAP::Parser \- Parse TAP output" +.IX Subsection "TAP::Parser - Parse TAP output" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.PD +\&\f(CW\*(C`source\*(C'\fR, \f(CW\*(C`tap\*(C'\fR, \f(CW\*(C`exec\*(C'\fR, \f(CW\*(C`sources\*(C'\fR, \f(CW\*(C`callback\*(C'\fR, \f(CW\*(C`switches\*(C'\fR, +\&\f(CW\*(C`test_args\*(C'\fR, \f(CW\*(C`spool\*(C'\fR, \f(CW\*(C`merge\*(C'\fR, \f(CW\*(C`grammar_class\*(C'\fR, +\&\f(CW\*(C`result_factory_class\*(C'\fR, \f(CW\*(C`iterator_factory_class\*(C'\fR +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PD 0 +.IP "INDIVIDUAL RESULTS" 4 +.IX Item "INDIVIDUAL RESULTS" +.RS 4 +.IP "Result types" 4 +.IX Item "Result types" +.PD +Version, Plan, Pragma, Test, Comment, Bailout, Unknown +.IP "Common type methods" 4 +.IX Item "Common type methods" +.PD 0 +.ie n .IP """plan"" methods" 4 +.el .IP "\f(CWplan\fR methods" 4 +.IX Item "plan methods" +.ie n .IP """pragma"" methods" 4 +.el .IP "\f(CWpragma\fR methods" 4 +.IX Item "pragma methods" +.ie n .IP """comment"" methods" 4 +.el .IP "\f(CWcomment\fR methods" 4 +.IX Item "comment methods" +.ie n .IP """bailout"" methods" 4 +.el .IP "\f(CWbailout\fR methods" 4 +.IX Item "bailout methods" +.ie n .IP """unknown"" methods" 4 +.el .IP "\f(CWunknown\fR methods" 4 +.IX Item "unknown methods" +.ie n .IP """test"" methods" 4 +.el .IP "\f(CWtest\fR methods" 4 +.IX Item "test methods" +.RE +.RS 4 +.RE +.IP "TOTAL RESULTS" 4 +.IX Item "TOTAL RESULTS" +.RS 4 +.IP "Individual Results" 4 +.IX Item "Individual Results" +.RE +.RS 4 +.RE +.IP Pragmas 4 +.IX Item "Pragmas" +.IP "Summary Results" 4 +.IX Item "Summary Results" +.ie n .IP """ignore_exit""" 4 +.el .IP \f(CWignore_exit\fR 4 +.IX Item "ignore_exit" +.PD +.PP +Misplaced plan, No plan, More than one plan, Test numbers out of sequence +.IP CALLBACKS 4 +.IX Item "CALLBACKS" +\&\f(CW\*(C`test\*(C'\fR, \f(CW\*(C`version\*(C'\fR, \f(CW\*(C`plan\*(C'\fR, \f(CW\*(C`comment\*(C'\fR, \f(CW\*(C`bailout\*(C'\fR, \f(CW\*(C`yaml\*(C'\fR, \f(CW\*(C`unknown\*(C'\fR, +\&\f(CW\*(C`ELSE\*(C'\fR, \f(CW\*(C`ALL\*(C'\fR, \f(CW\*(C`EOF\*(C'\fR +.IP "TAP GRAMMAR" 4 +.IX Item "TAP GRAMMAR" +.PD 0 +.IP "BACKWARDS COMPATIBILITY" 4 +.IX Item "BACKWARDS COMPATIBILITY" +.RS 4 +.IP Differences 4 +.IX Item "Differences" +.PD +TODO plans, 'Missing' tests +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.PD 0 +.IP "Parser Components" 4 +.IX Item "Parser Components" +.PD +option 1, option 2 +.RE +.RS 4 +.RE +.IP ACKNOWLEDGMENTS 4 +.IX Item "ACKNOWLEDGMENTS" +Michael Schwern, Andy Lester, chromatic, GEOFFR, Shlomi Fish, Torsten +Schoenfeld, Jerry Gay, Aristotle, Adam Kennedy, Yves Orton, Adrian Howard, +Sean & Lil, Andreas J. Koenig, Florian Ragwitz, Corion, Mark Stosberg, Matt +Kraai, David Wheeler, Alex Vandiver, Cosimo Streppone, Ville Skyttä +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SS "TAP::Parser::Aggregator \- Aggregate TAP::Parser results" +.IX Subsection "TAP::Parser::Aggregator - Aggregate TAP::Parser results" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP "Summary methods" 4 +.IX Item "Summary methods" +.PD +failed, parse_errors, passed, planned, skipped, todo, todo_passed, wait, +exit +.PP +Failed tests, Parse errors, Bad exit or wait status +.IP "See Also" 4 +.IX Item "See Also" +.SS "TAP::Parser::Grammar \- A grammar for the Test Anything Protocol." +.IX Subsection "TAP::Parser::Grammar - A grammar for the Test Anything Protocol." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP "TAP GRAMMAR" 4 +.IX Item "TAP GRAMMAR" +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Iterator \- Base class for TAP source iterators" +.IX Subsection "TAP::Parser::Iterator - Base class for TAP source iterators" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Iterator::Array \- Iterator for array-based TAP sources" +.IX Subsection "TAP::Parser::Iterator::Array - Iterator for array-based TAP sources" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.RE +.RS 4 +.RE +.IP ATTRIBUTION 4 +.IX Item "ATTRIBUTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Iterator::Process \- Iterator for process-based TAP sources" +.IX Subsection "TAP::Parser::Iterator::Process - Iterator for process-based TAP sources" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.RE +.RS 4 +.RE +.IP ATTRIBUTION 4 +.IX Item "ATTRIBUTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Iterator::Stream \- Iterator for filehandle-based TAP sources" +.IX Subsection "TAP::Parser::Iterator::Stream - Iterator for filehandle-based TAP sources" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP ATTRIBUTION 4 +.IX Item "ATTRIBUTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::IteratorFactory \- Figures out which SourceHandler objects to use for a given Source" +.IX Subsection "TAP::Parser::IteratorFactory - Figures out which SourceHandler objects to use for a given Source" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP ATTRIBUTION 4 +.IX Item "ATTRIBUTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Multiplexer \- Multiplex multiple TAP::Parsers" +.IX Subsection "TAP::Parser::Multiplexer - Multiplex multiple TAP::Parsers" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP "See Also" 4 +.IX Item "See Also" +.PD +.SS "TAP::Parser::Result \- Base class for TAP::Parser output objects" +.IX Subsection "TAP::Parser::Result - Base class for TAP::Parser output objects" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RE +.RS 4 +.RE +.IP "Boolean methods" 4 +.IX Item "Boolean methods" +.PD +\&\f(CW\*(C`is_plan\*(C'\fR, \f(CW\*(C`is_pragma\*(C'\fR, \f(CW\*(C`is_test\*(C'\fR, \f(CW\*(C`is_comment\*(C'\fR, \f(CW\*(C`is_bailout\*(C'\fR, +\&\f(CW\*(C`is_version\*(C'\fR, \f(CW\*(C`is_unknown\*(C'\fR, \f(CW\*(C`is_yaml\*(C'\fR +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.PD 0 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Result::Bailout \- Bailout result token." +.IX Subsection "TAP::Parser::Result::Bailout - Bailout result token." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Result::Comment \- Comment result token." +.IX Subsection "TAP::Parser::Result::Comment - Comment result token." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Result::Plan \- Plan result token." +.IX Subsection "TAP::Parser::Result::Plan - Plan result token." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR, \f(CW\*(C`raw\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Result::Pragma \- TAP pragma token." +.IX Subsection "TAP::Parser::Result::Pragma - TAP pragma token." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR, \f(CW\*(C`raw\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Result::Test \- Test result token." +.IX Subsection "TAP::Parser::Result::Test - Test result token." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.RS 4 +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.RE +.RS 4 +.RE +.PD +.SS "TAP::Parser::Result::Unknown \- Unknown result token." +.IX Subsection "TAP::Parser::Result::Unknown - Unknown result token." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR, \f(CW\*(C`raw\*(C'\fR +.SS "TAP::Parser::Result::Version \- TAP syntax version token." +.IX Subsection "TAP::Parser::Result::Version - TAP syntax version token." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR, \f(CW\*(C`raw\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Result::YAML \- YAML result token." +.IX Subsection "TAP::Parser::Result::YAML - YAML result token." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "OVERRIDDEN METHODS" 4 +.IX Item "OVERRIDDEN METHODS" +.PD +\&\f(CW\*(C`as_string\*(C'\fR, \f(CW\*(C`raw\*(C'\fR +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::ResultFactory \- Factory for creating TAP::Parser output objects" +.IX Subsection "TAP::Parser::ResultFactory - Factory for creating TAP::Parser output objects" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP VERSION 4 +.IX Item "VERSION" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Scheduler \- Schedule tests during parallel testing" +.IX Subsection "TAP::Parser::Scheduler - Schedule tests during parallel testing" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Rules data structure" 4 +.IX Item "Rules data structure" +.PD +By default, all tests are eligible to be run in parallel. Specifying any of +your own rules removes this one, "First match wins". The first rule that +matches a test will be the one that applies, Any test which does not match +a rule will be run in sequence at the end of the run, The existence of a +rule does not imply selecting a test. You must still specify the tests to +run, Specifying a rule to allow tests to run in parallel does not make the +run in parallel. You still need specify the number of parallel \f(CW\*(C`jobs\*(C'\fR in +your Harness object +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.SS "TAP::Parser::Scheduler::Job \- A single testing job." +.IX Subsection "TAP::Parser::Scheduler::Job - A single testing job." +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP Attributes 4 +.IX Item "Attributes" +.PD +.SS "TAP::Parser::Scheduler::Spinner \- A no-op job." +.IX Subsection "TAP::Parser::Scheduler::Spinner - A no-op job." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::Source \- a TAP source & meta data about it" +.IX Subsection "TAP::Parser::Source - a TAP source & meta data about it" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler \- Base class for different TAP source handlers" +.IX Subsection "TAP::Parser::SourceHandler - Base class for different TAP source handlers" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler::Executable \- Stream output from an executable TAP source" +.IX Subsection "TAP::Parser::SourceHandler::Executable - Stream output from an executable TAP source" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler::File \- Stream TAP from a text file." +.IX Subsection "TAP::Parser::SourceHandler::File - Stream TAP from a text file." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP CONFIGURATION 4 +.IX Item "CONFIGURATION" +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler::Handle \- Stream TAP from an IO::Handle or a GLOB." +.IX Subsection "TAP::Parser::SourceHandler::Handle - Stream TAP from an IO::Handle or a GLOB." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler::Perl \- Stream TAP from a Perl executable" +.IX Subsection "TAP::Parser::SourceHandler::Perl - Stream TAP from a Perl executable" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.RS 4 +.IP Example 4 +.IX Item "Example" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::SourceHandler::RawTAP \- Stream output from raw TAP in a scalar/array ref." +.IX Subsection "TAP::Parser::SourceHandler::RawTAP - Stream output from raw TAP in a scalar/array ref." +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "TAP::Parser::YAMLish::Reader \- Read YAMLish data from iterator" +.IX Subsection "TAP::Parser::YAMLish::Reader - Read YAMLish data from iterator" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "TAP::Parser::YAMLish::Writer \- Write YAMLish data" +.IX Subsection "TAP::Parser::YAMLish::Writer - Write YAMLish data" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "Class Methods" 4 +.IX Item "Class Methods" +.IP "Instance Methods" 4 +.IX Item "Instance Methods" +.PD +a reference to a scalar to append YAML to, the handle of an open file, a +reference to an array into which YAML will be pushed, a code reference +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Term::ANSIColor \- Color screen output using ANSI escape sequences" +.IX Subsection "Term::ANSIColor - Color screen output using ANSI escape sequences" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Supported Colors" 4 +.IX Item "Supported Colors" +.IP "Function Interface" 4 +.IX Item "Function Interface" +.PD +color(ATTR[, ATTR ...]), colored(STRING, ATTR[, ATTR ...]), +colored(ATTR\-REF, STRING[, STRING...]), uncolor(ESCAPE), +colorstrip(STRING[, STRING ...]), colorvalid(ATTR[, ATTR ...]), +coloralias(ALIAS[, ATTR ...]) +.IP "Constant Interface" 4 +.IX Item "Constant Interface" +.PD 0 +.IP "The Color Stack" 4 +.IX Item "The Color Stack" +.IP "Supporting CLICOLOR" 4 +.IX Item "Supporting CLICOLOR" +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +Bad color mapping \f(CW%s\fR, Bad escape sequence \f(CW%s\fR, Bareword "%s" not allowed +while "strict subs" in use, Cannot alias standard color \f(CW%s\fR, Cannot alias +standard color \f(CW%s\fR in \f(CW%s\fR, Invalid alias name \f(CW%s\fR, Invalid alias name \f(CW%s\fR in +\&\f(CW%s\fR, Invalid attribute name \f(CW%s\fR, Invalid attribute name \f(CW%s\fR in \f(CW%s\fR, Name "%s" +used only once: possible typo, No comma allowed after filehandle, No name +for escape sequence \f(CW%s\fR +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +ANSI_COLORS_ALIASES, ANSI_COLORS_DISABLED, NO_COLOR +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.PD 0 +.IP RESTRICTIONS 4 +.IX Item "RESTRICTIONS" +.IP NOTES 4 +.IX Item "NOTES" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Term::Cap \- Perl termcap interface" +.IX Subsection "Term::Cap - Perl termcap interface" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP METHODS 4 +.IX Item "METHODS" +.RE +.RS 4 +.RE +.PD +.PP +\&\fBTgetent\fR, OSPEED, TERM +.PP +\&\fBTpad\fR, \fR\f(CB$string\fR\fB\fR, \fB\fR\f(CB$cnt\fR\fB\fR, \fB\fR\f(CB$FH\fR\fB\fR +.PP +\&\fBTputs\fR, \fR\f(CB$cap\fR\fB\fR, \fB\fR\f(CB$cnt\fR\fB\fR, \fB\fR\f(CB$FH\fR\fB\fR +.PP +\&\fBTgoto\fR, \fR\f(CB$cap\fR\fB\fR, \fB\fR\f(CB$col\fR\fB\fR, \fB\fR\f(CB$row\fR\fB\fR, \fB\fR\f(CB$FH\fR\fB\fR +.PP +\&\fBTrequire\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Term::Complete \- Perl word completion module" +.IX Subsection "Term::Complete - Perl word completion module" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +<tab>, ^D, ^U, <del>, <bs> +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.ie n .SS "Term::ReadLine \- Perl interface to various ""readline"" packages. If no real package is found, substitutes stubs instead of basic functions." +.el .SS "Term::ReadLine \- Perl interface to various \f(CWreadline\fP packages. If no real package is found, substitutes stubs instead of basic functions." +.IX Subsection "Term::ReadLine - Perl interface to various readline packages. If no real package is found, substitutes stubs instead of basic functions." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Minimal set of supported functions" 4 +.IX Item "Minimal set of supported functions" +.PD +\&\f(CW\*(C`ReadLine\*(C'\fR, \f(CW\*(C`new\*(C'\fR, \f(CW\*(C`readline\*(C'\fR, \f(CW\*(C`addhistory\*(C'\fR, \f(CW\*(C`IN\*(C'\fR, \f(CW\*(C`OUT\*(C'\fR, \f(CW\*(C`MinLine\*(C'\fR, +\&\f(CW\*(C`findConsole\*(C'\fR, Attribs, \f(CW\*(C`Features\*(C'\fR +.IP "Additional supported functions" 4 +.IX Item "Additional supported functions" +\&\f(CW\*(C`tkRunning\*(C'\fR, \f(CW\*(C`event_loop\*(C'\fR, \f(CW\*(C`ornaments\*(C'\fR, \f(CW\*(C`newTTY\*(C'\fR +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD 0 +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.PD +.SS "Test \- provides a simple framework for writing test scripts" +.IX Subsection "Test - provides a simple framework for writing test scripts" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "QUICK START GUIDE" 4 +.IX Item "QUICK START GUIDE" +.RS 4 +.IP Functions 4 +.IX Item "Functions" +.PD +\&\f(CWplan(...)\fR, \f(CW\*(C`tests => \fR\f(CInumber\fR\f(CW\*(C'\fR, \f(CW\*(C`todo => [\fR\f(CI1,5,14\fR\f(CW]\*(C'\fR, +\&\f(CW\*(C`onfail => sub { ... }\*(C'\fR, \f(CW\*(C`onfail => \e&some_sub\*(C'\fR +.RE +.RS 4 +.RE +.PP +\&\fB_to_value\fR +.PP +\&\f(CWok(...)\fR +.PP +\&\f(CW\*(C`skip(\fR\f(CIskip_if_true\fR\f(CW, \fR\f(CIargs...\fR\f(CW)\*(C'\fR +.IP "TEST TYPES" 4 +.IX Item "TEST TYPES" +NORMAL TESTS, SKIPPED TESTS, TODO TESTS +.IP ONFAIL 4 +.IX Item "ONFAIL" +.PD 0 +.IP "BUGS and CAVEATS" 4 +.IX Item "BUGS and CAVEATS" +.IP ENVIRONMENT 4 +.IX Item "ENVIRONMENT" +.IP NOTE 4 +.IX Item "NOTE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Test2 \- Framework for writing test tools that all work together." +.IX Subsection "Test2 - Framework for writing test tools that all work together." +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "WHAT IS NEW?" 4 +.IX Item "WHAT IS NEW?" +.PD +Easier to test new testing tools, Better diagnostics capabilities, Event +driven, More complete API, Support for output other than TAP, Subtest +implementation is more sane, Support for threading/forking +.RE +.RS 4 +.RE +.IP "GETTING STARTED" 4 +.IX Item "GETTING STARTED" +.SS "Test2, This describes the namespace layout for the Test2 ecosystem. Not all the namespaces listed here are part of the Test2 distribution, some are implemented in Test2::Suite." +.IX Subsection "Test2, This describes the namespace layout for the Test2 ecosystem. Not all the namespaces listed here are part of the Test2 distribution, some are implemented in Test2::Suite." +.PD 0 +.IP Test2::Tools:: 4 +.IX Item "Test2::Tools::" +.IP Test2::Plugin:: 4 +.IX Item "Test2::Plugin::" +.IP Test2::Bundle:: 4 +.IX Item "Test2::Bundle::" +.IP Test2::Require:: 4 +.IX Item "Test2::Require::" +.IP Test2::Formatter:: 4 +.IX Item "Test2::Formatter::" +.IP Test2::Event:: 4 +.IX Item "Test2::Event::" +.IP Test2::Hub:: 4 +.IX Item "Test2::Hub::" +.IP Test2::IPC:: 4 +.IX Item "Test2::IPC::" +.IP Test2::Util:: 4 +.IX Item "Test2::Util::" +.IP Test2::API:: 4 +.IX Item "Test2::API::" +.IP Test2:: 4 +.IX Item "Test2::" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP "CONTACTING US" 4 +.IX Item "CONTACTING US" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API \- Primary interface for writing Test2 based testing tools." +.IX Subsection "Test2::API - Primary interface for writing Test2 based testing tools." +.PD 0 +.IP "***INTERNALS NOTE***" 4 +.IX Item "***INTERNALS NOTE***" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP "WRITING A TOOL" 4 +.IX Item "WRITING A TOOL" +.IP "TESTING YOUR TOOLS" 4 +.IX Item "TESTING YOUR TOOLS" +.IP "OTHER API FUNCTIONS" 4 +.IX Item "OTHER API FUNCTIONS" +.RE +.RS 4 +.RE +.IP "MAIN API EXPORTS" 4 +.IX Item "MAIN API EXPORTS" +.RS 4 +.IP context(...) 4 +.IX Item "context(...)" +.PD +\&\f(CW$ctx\fR = \fBcontext()\fR, \f(CW$ctx\fR = context(%params), level => \f(CW$int\fR, wrapped => \f(CW$int\fR, +stack => \f(CW$stack\fR, hub => \f(CW$hub\fR, on_init => sub { ... }, on_release => sub { +\&... } +.IP release($;$) 4 +.IX Item "release($;$)" +release \f(CW$ctx\fR;, release \f(CW$ctx\fR, ...; +.IP context_do(&;@) 4 +.IX Item "context_do(&;@)" +.PD 0 +.IP no_context(&;$) 4 +.IX Item "no_context(&;$)" +.PD +no_context { ... };, no_context { ... } \f(CW$hid\fR; +.IP intercept(&) 4 +.IX Item "intercept(&)" +.PD 0 +.IP run_subtest(...) 4 +.IX Item "run_subtest(...)" +.PD +\&\f(CW$NAME\fR, \e&CODE, \f(CW$BUFFERED\fR or \e%PARAMS, 'buffered' => \f(CW$bool\fR, 'inherit_trace' +=> \f(CW$bool\fR, 'no_fork' => \f(CW$bool\fR, \f(CW@ARGS\fR, Things not effected by this flag, +Things that are effected by this flag, Things that are formatter dependant +.RE +.RS 4 +.RE +.IP "OTHER API EXPORTS" 4 +.IX Item "OTHER API EXPORTS" +.RS 4 +.PD 0 +.IP "STATUS AND INITIALIZATION STATE" 4 +.IX Item "STATUS AND INITIALIZATION STATE" +.PD +\&\f(CW$bool\fR = \fBtest2_init_done()\fR, \f(CW$bool\fR = \fBtest2_load_done()\fR, \fBtest2_set_is_end()\fR, +test2_set_is_end($bool), \f(CW$bool\fR = \fBtest2_get_is_end()\fR, \f(CW$stack\fR = +\&\fBtest2_stack()\fR, \f(CW$bool\fR = \fBtest2_is_testing_done()\fR, test2_ipc_disable, \f(CW$bool\fR = +test2_ipc_diabled, \fBtest2_ipc_wait_enable()\fR, \fBtest2_ipc_wait_disable()\fR, \f(CW$bool\fR += \fBtest2_ipc_wait_enabled()\fR, \f(CW$bool\fR = \fBtest2_no_wait()\fR, test2_no_wait($bool), +\&\f(CW$fh\fR = \fBtest2_stdout()\fR, \f(CW$fh\fR = \fBtest2_stderr()\fR, \fBtest2_reset_io()\fR +.IP "BEHAVIOR HOOKS" 4 +.IX Item "BEHAVIOR HOOKS" +test2_add_callback_exit(sub { ... }), test2_add_callback_post_load(sub { +\&... }), test2_add_callback_testing_done(sub { ... }), +test2_add_callback_context_acquire(sub { ... }), +test2_add_callback_context_init(sub { ... }), +test2_add_callback_context_release(sub { ... }), +test2_add_callback_pre_subtest(sub { ... }), \f(CW@list\fR = +\&\fBtest2_list_context_acquire_callbacks()\fR, \f(CW@list\fR = +\&\fBtest2_list_context_init_callbacks()\fR, \f(CW@list\fR = +\&\fBtest2_list_context_release_callbacks()\fR, \f(CW@list\fR = +\&\fBtest2_list_exit_callbacks()\fR, \f(CW@list\fR = \fBtest2_list_post_load_callbacks()\fR, +\&\f(CW@list\fR = \fBtest2_list_pre_subtest_callbacks()\fR, test2_add_uuid_via(sub { ... +}), \f(CW$sub\fR = \fBtest2_add_uuid_via()\fR +.IP "IPC AND CONCURRENCY" 4 +.IX Item "IPC AND CONCURRENCY" +\&\f(CW$bool\fR = \fBtest2_has_ipc()\fR, \f(CW$ipc\fR = \fBtest2_ipc()\fR, test2_ipc_add_driver($DRIVER), +\&\f(CW@drivers\fR = \fBtest2_ipc_drivers()\fR, \f(CW$bool\fR = \fBtest2_ipc_polling()\fR, +\&\fBtest2_ipc_enable_polling()\fR, \fBtest2_ipc_disable_polling()\fR, +\&\fBtest2_ipc_enable_shm()\fR, test2_ipc_set_pending($uniq_val), \f(CW$pending\fR = +\&\fBtest2_ipc_get_pending()\fR, \f(CW$timeout\fR = \fBtest2_ipc_get_timeout()\fR, +test2_ipc_set_timeout($timeout) +.IP "MANAGING FORMATTERS" 4 +.IX Item "MANAGING FORMATTERS" +\&\f(CW$formatter\fR = test2_formatter, test2_formatter_set($class_or_instance), +\&\f(CW@formatters\fR = \fBtest2_formatters()\fR, test2_formatter_add($class_or_instance) +.RE +.RS 4 +.RE +.IP "OTHER EXAMPLES" 4 +.IX Item "OTHER EXAMPLES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP MAGIC 4 +.IX Item "MAGIC" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::Breakage \- What breaks at what version" +.IX Subsection "Test2::API::Breakage - What breaks at what version" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\f(CW%mod_ver\fR = \fBupgrade_suggested()\fR, \f(CW%mod_ver\fR = +Test2::API::Breakage\->\fBupgrade_suggested()\fR, \f(CW%mod_ver\fR = \fBupgrade_required()\fR, +\&\f(CW%mod_ver\fR = Test2::API::Breakage\->\fBupgrade_required()\fR, \f(CW%mod_ver\fR = +\&\fBknown_broken()\fR, \f(CW%mod_ver\fR = Test2::API::Breakage\->\fBknown_broken()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::Context \- Object to represent a testing context." +.IX Subsection "Test2::API::Context - Object to represent a testing context." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP "CRITICAL DETAILS" 4 +.IX Item "CRITICAL DETAILS" +.PD +you MUST always use the \fBcontext()\fR sub from Test2::API, You MUST always +release the context when done with it, You MUST NOT pass context objects +around, You MUST NOT store or cache a context for later, You SHOULD obtain +your context as soon as possible in a given tool +.IP METHODS 4 +.IX Item "METHODS" +\&\f(CW$ctx\fR\->done_testing;, \f(CW$clone\fR = \f(CW$ctx\fR\->\fBsnapshot()\fR, \f(CW$ctx\fR\->\fBrelease()\fR, +\&\f(CW$ctx\fR\->throw($message), \f(CW$ctx\fR\->alert($message), \f(CW$stack\fR = \f(CW$ctx\fR\->\fBstack()\fR, \f(CW$hub\fR += \f(CW$ctx\fR\->\fBhub()\fR, \f(CW$dbg\fR = \f(CW$ctx\fR\->\fBtrace()\fR, \f(CW$ctx\fR\->do_in_context(\e&code, \f(CW@args\fR);, +\&\f(CW$ctx\fR\->\fBrestore_error_vars()\fR, $! = \f(CW$ctx\fR\->\fBerrno()\fR, $? = \f(CW$ctx\fR\->\fBchild_error()\fR, +$@ = \f(CW$ctx\fR\->\fBeval_error()\fR +.RS 4 +.IP "EVENT PRODUCTION METHODS" 4 +.IX Item "EVENT PRODUCTION METHODS" +\&\f(CW$event\fR = \f(CW$ctx\fR\->\fBpass()\fR, \f(CW$event\fR = \f(CW$ctx\fR\->pass($name), \f(CW$true\fR = +\&\f(CW$ctx\fR\->\fBpass_and_release()\fR, \f(CW$true\fR = \f(CW$ctx\fR\->pass_and_release($name), my \f(CW$event\fR += \f(CW$ctx\fR\->\fBfail()\fR, my \f(CW$event\fR = \f(CW$ctx\fR\->fail($name), my \f(CW$event\fR = +\&\f(CW$ctx\fR\->fail($name, \f(CW@diagnostics\fR), my \f(CW$false\fR = \f(CW$ctx\fR\->\fBfail_and_release()\fR, my +\&\f(CW$false\fR = \f(CW$ctx\fR\->fail_and_release($name), my \f(CW$false\fR = +\&\f(CW$ctx\fR\->fail_and_release($name, \f(CW@diagnostics\fR), \f(CW$event\fR = \f(CW$ctx\fR\->ok($bool, +\&\f(CW$name\fR), \f(CW$event\fR = \f(CW$ctx\fR\->ok($bool, \f(CW$name\fR, \e@on_fail), \f(CW$event\fR = +\&\f(CW$ctx\fR\->note($message), \f(CW$event\fR = \f(CW$ctx\fR\->diag($message), \f(CW$event\fR = +\&\f(CW$ctx\fR\->plan($max), \f(CW$event\fR = \f(CW$ctx\fR\->plan(0, 'SKIP', \f(CW$reason\fR), \f(CW$event\fR = +\&\f(CW$ctx\fR\->skip($name, \f(CW$reason\fR);, \f(CW$event\fR = \f(CW$ctx\fR\->bail($reason), \f(CW$event\fR = +\&\f(CW$ctx\fR\->send_ev2(%facets), \f(CW$event\fR = \f(CW$ctx\fR\->build_e2(%facets), \f(CW$event\fR = +\&\f(CW$ctx\fR\->send_ev2_and_release($Type, \f(CW%parameters\fR), \f(CW$event\fR = +\&\f(CW$ctx\fR\->send_event($Type, \f(CW%parameters\fR), \f(CW$event\fR = \f(CW$ctx\fR\->build_event($Type, +\&\f(CW%parameters\fR), \f(CW$event\fR = \f(CW$ctx\fR\->send_event_and_release($Type, \f(CW%parameters\fR) +.RE +.RS 4 +.RE +.IP HOOKS 4 +.IX Item "HOOKS" +.RS 4 +.PD 0 +.IP "INIT HOOKS" 4 +.IX Item "INIT HOOKS" +.IP "RELEASE HOOKS" 4 +.IX Item "RELEASE HOOKS" +.RE +.RS 4 +.RE +.IP "THIRD PARTY META-DATA" 4 +.IX Item "THIRD PARTY META-DATA" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org>, Kent Fredric +<kentnl@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::Instance \- Object used by Test2::API under the hood" +.IX Subsection "Test2::API::Instance - Object used by Test2::API under the hood" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD +\&\f(CW$pid\fR = \f(CW$obj\fR\->pid, \f(CW$obj\fR\->tid, \f(CW$obj\fR\->\fBreset()\fR, \f(CW$obj\fR\->\fBload()\fR, \f(CW$bool\fR = +\&\f(CW$obj\fR\->loaded, \f(CW$arrayref\fR = \f(CW$obj\fR\->post_load_callbacks, +\&\f(CW$obj\fR\->add_post_load_callback(sub { ... }), \f(CW$hashref\fR = \f(CW$obj\fR\->\fBcontexts()\fR, +\&\f(CW$arrayref\fR = \f(CW$obj\fR\->context_acquire_callbacks, \f(CW$arrayref\fR = +\&\f(CW$obj\fR\->context_init_callbacks, \f(CW$arrayref\fR = \f(CW$obj\fR\->context_release_callbacks, +\&\f(CW$arrayref\fR = \f(CW$obj\fR\->pre_subtest_callbacks, +\&\f(CW$obj\fR\->add_context_init_callback(sub { ... }), +\&\f(CW$obj\fR\->add_context_release_callback(sub { ... }), +\&\f(CW$obj\fR\->add_pre_subtest_callback(sub { ... }), \f(CW$obj\fR\->\fBset_exit()\fR, +\&\f(CW$obj\fR\->set_ipc_pending($val), \f(CW$pending\fR = \f(CW$obj\fR\->\fBget_ipc_pending()\fR, \f(CW$timeout\fR = +\&\f(CW$obj\fR\->ipc_timeout;, \f(CW$obj\fR\->set_ipc_timeout($timeout);, \f(CW$drivers\fR = +\&\f(CW$obj\fR\->ipc_drivers, \f(CW$obj\fR\->add_ipc_driver($DRIVER_CLASS), \f(CW$bool\fR = +\&\f(CW$obj\fR\->ipc_polling, \f(CW$obj\fR\->enable_ipc_polling, \f(CW$obj\fR\->disable_ipc_polling, +\&\f(CW$bool\fR = \f(CW$obj\fR\->no_wait, \f(CW$bool\fR = \f(CW$obj\fR\->set_no_wait($bool), \f(CW$arrayref\fR = +\&\f(CW$obj\fR\->exit_callbacks, \f(CW$obj\fR\->add_exit_callback(sub { ... }), \f(CW$bool\fR = +\&\f(CW$obj\fR\->finalized, \f(CW$ipc\fR = \f(CW$obj\fR\->ipc, \f(CW$obj\fR\->ipc_disable, \f(CW$bool\fR = +\&\f(CW$obj\fR\->ipc_disabled, \f(CW$stack\fR = \f(CW$obj\fR\->stack, \f(CW$formatter\fR = \f(CW$obj\fR\->formatter, +\&\f(CW$bool\fR = \f(CW$obj\fR\->\fBformatter_set()\fR, \f(CW$obj\fR\->add_formatter($class), +\&\f(CW$obj\fR\->add_formatter($obj), \f(CW$obj\fR\->set_add_uuid_via(sub { ... }), \f(CW$sub\fR = +\&\f(CW$obj\fR\->\fBadd_uuid_via()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::InterceptResult \- Representation of a list of events." +.IX Subsection "Test2::API::InterceptResult - Representation of a list of events." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP CONSTRUCTION 4 +.IX Item "CONSTRUCTION" +.PD +\&\f(CW$events\fR = Test2::API::InterceptResult\->new(@EVENTS), \f(CW$events\fR = +Test2::API::InterceptResult\->new_from_ref(\e@EVENTS), \f(CW$clone\fR = +\&\f(CW$events\fR\->\fBclone()\fR +.IP NORMALIZATION 4 +.IX Item "NORMALIZATION" +\&\f(CW@events\fR = \f(CW$events\fR\->event_list, \f(CW$hub\fR = \f(CW$events\fR\->hub, \f(CW$state\fR = +\&\f(CW$events\fR\->state, \f(CW$new\fR = \f(CW$events\fR\->upgrade, \f(CW$events\fR\->upgrade(in_place => +\&\f(CW$BOOL\fR), \f(CW$new\fR = \f(CW$events\fR\->squash_info, \f(CW$events\fR\->squash_info(in_place => +\&\f(CW$BOOL\fR) +.IP FILTERING 4 +.IX Item "FILTERING" +in_place => \f(CW$BOOL\fR, args => \e@ARGS, \f(CW$events\fR\->grep($CALL, \f(CW%PARAMS\fR), +\&\f(CW$events\fR\->asserts(%PARAMS), \f(CW$events\fR\->subtests(%PARAMS), +\&\f(CW$events\fR\->diags(%PARAMS), \f(CW$events\fR\->notes(%PARAMS), \f(CW$events\fR\->errors(%PARAMS), +\&\f(CW$events\fR\->plans(%PARAMS), \f(CW$events\fR\->causes_fail(%PARAMS), +\&\f(CW$events\fR\->causes_failure(%PARAMS) +.IP MAPPING 4 +.IX Item "MAPPING" +\&\f(CW$arrayref\fR = \f(CW$events\fR\->map($CALL, \f(CW%PARAMS\fR), \f(CW$arrayref\fR = +\&\f(CW$events\fR\->flatten(%PARAMS), \f(CW$arrayref\fR = \f(CW$events\fR\->briefs(%PARAMS), \f(CW$arrayref\fR += \f(CW$events\fR\->summaries(%PARAMS), \f(CW$arrayref\fR = +\&\f(CW$events\fR\->subtest_results(%PARAMS), \f(CW$arrayref\fR = +\&\f(CW$events\fR\->diag_messages(%PARAMS), \f(CW$arrayref\fR = +\&\f(CW$events\fR\->note_messages(%PARAMS), \f(CW$arrayref\fR = +\&\f(CW$events\fR\->error_messages(%PARAMS) +.RE +.RS 4 +.RE +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::InterceptResult::Event \- Representation of an event for use in testing other test tools." +.IX Subsection "Test2::API::InterceptResult::Event - Representation of an event for use in testing other test tools." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "!!! IMPORTANT NOTES ON DESIGN !!!" 4 +.IX Item "!!! IMPORTANT NOTES ON DESIGN !!!" +.IP ATTRIBUTES 4 +.IX Item "ATTRIBUTES" +.PD +\&\f(CW$hashref\fR = \f(CW$event\fR\->facet_data, \f(CW$class\fR = \f(CW$event\fR\->result_class +.IP DUPLICATION 4 +.IX Item "DUPLICATION" +\&\f(CW$copy\fR = \f(CW$event\fR\->clone +.IP "CONDENSED MULTI-FACET DATA" 4 +.IX Item "CONDENSED MULTI-FACET DATA" +\&\f(CW$bool\fR = \f(CW$event\fR\->causes_failure, \f(CW$bool\fR = \f(CW$event\fR\->causes_fail, +STRING_OR_EMPTY_LIST = \f(CW$event\fR\->brief, \f(CW$hashref\fR = \f(CW$event\fR\->flatten, \f(CW$hashref\fR += \f(CW$event\fR\->flatten(include_subevents => 1), always present, Present if the +event has a trace facet, If an assertion is present, If a plan is present:, +If amnesty facets are present, If Info (note/diag) facets are present, If +error facets are present, Present if the event is a subtest, If a bail-out +is being requested, \f(CW$hashref\fR = \f(CW$event\fR\->\fBsummary()\fR +.IP "DIRECT ARBITRARY FACET ACCESS" 4 +.IX Item "DIRECT ARBITRARY FACET ACCESS" +\&\f(CW@list_of_facets\fR = \f(CW$event\fR\->facet($name), \f(CW$undef_or_facet\fR = +\&\f(CW$event\fR\->the_facet($name) +.IP "TRACE FACET" 4 +.IX Item "TRACE FACET" +\&\f(CW@list_of_facets\fR = \f(CW$event\fR\->trace, \f(CW$undef_or_hashref\fR = \f(CW$event\fR\->the_trace, +\&\f(CW$undef_or_arrayref\fR = \f(CW$event\fR\->frame, \f(CW$undef_or_string\fR = +\&\f(CW$event\fR\->trace_details, \f(CW$undef_or_string\fR = \f(CW$event\fR\->trace_package, +\&\f(CW$undef_or_string\fR = \f(CW$event\fR\->trace_file, \f(CW$undef_or_integer\fR = +\&\f(CW$event\fR\->trace_line, \f(CW$undef_or_string\fR = \f(CW$event\fR\->trace_subname, +\&\f(CW$undef_or_string\fR = \f(CW$event\fR\->trace_tool, \f(CW$undef_or_string\fR = +\&\f(CW$event\fR\->trace_signature +.IP "ASSERT FACET" 4 +.IX Item "ASSERT FACET" +\&\f(CW$bool\fR = \f(CW$event\fR\->has_assert, \f(CW$undef_or_hashref\fR = \f(CW$event\fR\->the_assert, +\&\f(CW@list_of_facets\fR = \f(CW$event\fR\->assert, EMPTY_LIST_OR_STRING = +\&\f(CW$event\fR\->assert_brief +.IP "SUBTESTS (PARENT FACET)" 4 +.IX Item "SUBTESTS (PARENT FACET)" +\&\f(CW$bool\fR = \f(CW$event\fR\->has_subtest, \f(CW$undef_or_hashref\fR = \f(CW$event\fR\->the_subtest, +\&\f(CW@list_of_facets\fR = \f(CW$event\fR\->subtest, EMPTY_LIST_OR_OBJECT = +\&\f(CW$event\fR\->subtest_result +.IP "CONTROL FACET (BAILOUT, ENCODING)" 4 +.IX Item "CONTROL FACET (BAILOUT, ENCODING)" +\&\f(CW$bool\fR = \f(CW$event\fR\->has_bailout, \f(CW$undef_hashref\fR = \f(CW$event\fR\->the_bailout, +EMPTY_LIST_OR_HASHREF = \f(CW$event\fR\->bailout, EMPTY_LIST_OR_STRING = +\&\f(CW$event\fR\->bailout_brief, EMPTY_LIST_OR_STRING = \f(CW$event\fR\->bailout_reason +.IP "PLAN FACET" 4 +.IX Item "PLAN FACET" +\&\f(CW$bool\fR = \f(CW$event\fR\->has_plan, \f(CW$undef_or_hashref\fR = \f(CW$event\fR\->the_plan, +\&\f(CW@list_if_hashrefs\fR = \f(CW$event\fR\->plan, EMPTY_LIST_OR_STRING \f(CW$event\fR\->plan_brief +.IP "AMNESTY FACET (TODO AND SKIP)" 4 +.IX Item "AMNESTY FACET (TODO AND SKIP)" +\&\f(CW$event\fR\->has_amnesty, \f(CW$event\fR\->the_amnesty, \f(CW$event\fR\->amnesty, +\&\f(CW$event\fR\->amnesty_reasons, \f(CW$event\fR\->has_todos, \f(CW$event\fR\->todos, +\&\f(CW$event\fR\->todo_reasons, \f(CW$event\fR\->has_skips, \f(CW$event\fR\->skips, +\&\f(CW$event\fR\->skip_reasons, \f(CW$event\fR\->has_other_amnesty, \f(CW$event\fR\->other_amnesty, +\&\f(CW$event\fR\->other_amnesty_reasons +.IP "ERROR FACET (CAPTURED EXCEPTIONS)" 4 +.IX Item "ERROR FACET (CAPTURED EXCEPTIONS)" +\&\f(CW$event\fR\->has_errors, \f(CW$event\fR\->the_errors, \f(CW$event\fR\->errors, +\&\f(CW$event\fR\->error_messages, \f(CW$event\fR\->error_brief +.IP "INFO FACET (DIAG, NOTE)" 4 +.IX Item "INFO FACET (DIAG, NOTE)" +\&\f(CW$event\fR\->has_info, \f(CW$event\fR\->the_info, \f(CW$event\fR\->info, \f(CW$event\fR\->info_messages, +\&\f(CW$event\fR\->has_diags, \f(CW$event\fR\->diags, \f(CW$event\fR\->diag_messages, \f(CW$event\fR\->has_notes, +\&\f(CW$event\fR\->notes, \f(CW$event\fR\->note_messages, \f(CW$event\fR\->has_other_info, +\&\f(CW$event\fR\->other_info, \f(CW$event\fR\->other_info_messages +.RE +.RS 4 +.RE +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::InterceptResult::Hub \- Hub used by InterceptResult." +.IX Subsection "Test2::API::InterceptResult::Hub - Hub used by InterceptResult." +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::InterceptResult::Squasher \- Encapsulation of the algorithm that squashes diags into assertions." +.IX Subsection "Test2::API::InterceptResult::Squasher - Encapsulation of the algorithm that squashes diags into assertions." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::API::Stack \- Object to manage a stack of Test2::Hub instances." +.IX Subsection "Test2::API::Stack - Object to manage a stack of Test2::Hub instances." +.PD 0 +.IP "***INTERNALS NOTE***" 4 +.IX Item "***INTERNALS NOTE***" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$stack\fR = Test2::API::Stack\->\fBnew()\fR, \f(CW$hub\fR = \f(CW$stack\fR\->\fBnew_hub()\fR, \f(CW$hub\fR = +\&\f(CW$stack\fR\->new_hub(%params), \f(CW$hub\fR = \f(CW$stack\fR\->new_hub(%params, class => \f(CW$class\fR), +\&\f(CW$hub\fR = \f(CW$stack\fR\->\fBtop()\fR, \f(CW$hub\fR = \f(CW$stack\fR\->\fBpeek()\fR, \f(CW$stack\fR\->cull, \f(CW@hubs\fR = +\&\f(CW$stack\fR\->all, \f(CW$stack\fR\->clear, \f(CW$stack\fR\->push($hub), \f(CW$stack\fR\->pop($hub) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event \- Base class for events" +.IX Subsection "Test2::Event - Base class for events" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP GENERAL 4 +.IX Item "GENERAL" +.PD +\&\f(CW$trace\fR = \f(CW$e\fR\->trace, \f(CW$bool_or_undef\fR = \f(CW$e\fR\->related($e2), \f(CW$e\fR\->add_amnesty({tag +=> \f(CW$TAG\fR, details => \f(CW$DETAILS\fR});, \f(CW$uuid\fR = \f(CW$e\fR\->uuid, \f(CW$class\fR = +\&\f(CW$e\fR\->load_facet($name), \f(CW@classes\fR = \f(CW$e\fR\->\fBFACET_TYPES()\fR, \f(CW@classes\fR = +Test2::Event\->\fBFACET_TYPES()\fR +.IP "NEW API" 4 +.IX Item "NEW API" +\&\f(CW$hashref\fR = \f(CW$e\fR\->\fBcommon_facet_data()\fR;, \f(CW$hashref\fR = \f(CW$e\fR\->\fBfacet_data()\fR, \f(CW$hashref\fR += \f(CW$e\fR\->\fBfacets()\fR, \f(CW@errors\fR = \f(CW$e\fR\->\fBvalidate_facet_data()\fR;, \f(CW@errors\fR = +\&\f(CW$e\fR\->validate_facet_data(%params);, \f(CW@errors\fR = +\&\f(CW$e\fR\->validate_facet_data(\e%facets, \f(CW%params\fR);, \f(CW@errors\fR = +Test2::Event\->validate_facet_data(%params);, \f(CW@errors\fR = +Test2::Event\->validate_facet_data(\e%facets, \f(CW%params\fR);, require_facet_class +=> \f(CW$BOOL\fR, about => {...}, assert => {...}, control => {...}, meta => {...}, +parent => {...}, plan => {...}, trace => {...}, amnesty => [{...}, ...], +errors => [{...}, ...], info => [{...}, ...] +.IP "LEGACY API" 4 +.IX Item "LEGACY API" +\&\f(CW$bool\fR = \f(CW$e\fR\->causes_fail, \f(CW$bool\fR = \f(CW$e\fR\->increments_count, \f(CW$e\fR\->callback($hub), +\&\f(CW$num\fR = \f(CW$e\fR\->nested, \f(CW$bool\fR = \f(CW$e\fR\->global, \f(CW$code\fR = \f(CW$e\fR\->terminate, \f(CW$msg\fR = +\&\f(CW$e\fR\->summary, ($count, \f(CW$directive\fR, \f(CW$reason\fR) = \f(CW$e\fR\->\fBsets_plan()\fR, \f(CW$bool\fR = +\&\f(CW$e\fR\->diagnostics, \f(CW$bool\fR = \f(CW$e\fR\->no_display, \f(CW$id\fR = \f(CW$e\fR\->in_subtest, \f(CW$id\fR = +\&\f(CW$e\fR\->subtest_id +.RE +.RS 4 +.RE +.IP "THIRD PARTY META-DATA" 4 +.IX Item "THIRD PARTY META-DATA" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Bail \- Bailout!" +.IX Subsection "Test2::Event::Bail - Bailout!" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$reason\fR = \f(CW$e\fR\->reason +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Diag \- Diag event type" +.IX Subsection "Test2::Event::Diag - Diag event type" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$diag\fR\->message +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Encoding \- Set the encoding for the output stream" +.IX Subsection "Test2::Event::Encoding - Set the encoding for the output stream" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$encoding\fR = \f(CW$e\fR\->encoding +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Exception \- Exception event" +.IX Subsection "Test2::Event::Exception - Exception event" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$reason\fR = \f(CW$e\fR\->error +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Fail \- Event for a simple failed assertion" +.IX Subsection "Test2::Event::Fail - Event for a simple failed assertion" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Generic \- Generic event type." +.IX Subsection "Test2::Event::Generic - Generic event type." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$e\fR\->facet_data($data), \f(CW$data\fR = \f(CW$e\fR\->facet_data, \f(CW$e\fR\->callback($hub), +\&\f(CW$e\fR\->set_callback(sub { ... }), \f(CW$bool\fR = \f(CW$e\fR\->causes_fail, +\&\f(CW$e\fR\->set_causes_fail($bool), \f(CW$bool\fR = \f(CW$e\fR\->diagnostics, +\&\f(CW$e\fR\->set_diagnostics($bool), \f(CW$bool_or_undef\fR = \f(CW$e\fR\->global, \f(CW@bool_or_empty\fR = +\&\f(CW$e\fR\->global, \f(CW$e\fR\->set_global($bool_or_undef), \f(CW$bool\fR = \f(CW$e\fR\->increments_count, +\&\f(CW$e\fR\->set_increments_count($bool), \f(CW$bool\fR = \f(CW$e\fR\->no_display, +\&\f(CW$e\fR\->set_no_display($bool), \f(CW@plan\fR = \f(CW$e\fR\->sets_plan, +\&\f(CW$e\fR\->set_sets_plan(\e@plan), \f(CW$summary\fR = \f(CW$e\fR\->summary, +\&\f(CW$e\fR\->set_summary($summary_or_undef), \f(CW$int_or_undef\fR = \f(CW$e\fR\->terminate, +\&\f(CW@int_or_empty\fR = \f(CW$e\fR\->terminate, \f(CW$e\fR\->set_terminate($int_or_undef) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Note \- Note event type" +.IX Subsection "Test2::Event::Note - Note event type" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$note\fR\->message +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Ok \- Ok event type" +.IX Subsection "Test2::Event::Ok - Ok event type" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$rb\fR = \f(CW$e\fR\->pass, \f(CW$name\fR = \f(CW$e\fR\->name, \f(CW$b\fR = \f(CW$e\fR\->effective_pass +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Pass \- Event for a simple passing assertion" +.IX Subsection "Test2::Event::Pass - Event for a simple passing assertion" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Plan \- The event of a plan" +.IX Subsection "Test2::Event::Plan - The event of a plan" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$num\fR = \f(CW$plan\fR\->max, \f(CW$dir\fR = \f(CW$plan\fR\->directive, \f(CW$reason\fR = \f(CW$plan\fR\->reason +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Skip \- Skip event type" +.IX Subsection "Test2::Event::Skip - Skip event type" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$reason\fR = \f(CW$e\fR\->reason +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Subtest \- Event for subtest types" +.IX Subsection "Test2::Event::Subtest - Event for subtest types" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.PD +\&\f(CW$arrayref\fR = \f(CW$e\fR\->subevents, \f(CW$bool\fR = \f(CW$e\fR\->buffered +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::TAP::Version \- Event for TAP version." +.IX Subsection "Test2::Event::TAP::Version - Event for TAP version." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$version\fR = \f(CW$e\fR\->version +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::V2 \- Second generation event." +.IX Subsection "Test2::Event::V2 - Second generation event." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP "USING A CONTEXT" 4 +.IX Item "USING A CONTEXT" +.IP "USING THE CONSTRUCTOR" 4 +.IX Item "USING THE CONSTRUCTOR" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$fd\fR = \f(CW$e\fR\->\fBfacet_data()\fR, \f(CW$about\fR = \f(CW$e\fR\->\fBabout()\fR, \f(CW$trace\fR = \f(CW$e\fR\->\fBtrace()\fR +.RS 4 +.IP MUTATION 4 +.IX Item "MUTATION" +\&\f(CW$e\fR\->add_amnesty({...}), \f(CW$e\fR\->add_hub({...}), \f(CW$e\fR\->set_uuid($UUID), +\&\f(CW$e\fR\->set_trace($trace) +.IP "LEGACY SUPPORT METHODS" 4 +.IX Item "LEGACY SUPPORT METHODS" +causes_fail, diagnostics, global, increments_count, no_display, sets_plan, +subtest_id, summary, terminate +.RE +.RS 4 +.RE +.IP "THIRD PARTY META-DATA" 4 +.IX Item "THIRD PARTY META-DATA" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Event::Waiting \- Tell all procs/threads it is time to be done" +.IX Subsection "Test2::Event::Waiting - Tell all procs/threads it is time to be done" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet \- Base class for all event facets." +.IX Subsection "Test2::EventFacet - Base class for all event facets." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$key\fR = \f(CW$facet_class\fR\->\fBfacet_key()\fR, \f(CW$bool\fR = \f(CW$facet_class\fR\->\fBis_list()\fR, \f(CW$clone\fR = +\&\f(CW$facet\fR\->\fBclone()\fR, \f(CW$clone\fR = \f(CW$facet\fR\->clone(%replace) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::About \- Facet with event details." +.IX Subsection "Test2::EventFacet::About - Facet with event details." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$about\fR\->{details}, \f(CW$string\fR = \f(CW$about\fR\->\fBdetails()\fR, \f(CW$package\fR = +\&\f(CW$about\fR\->{package}, \f(CW$package\fR = \f(CW$about\fR\->\fBpackage()\fR, \f(CW$bool\fR = +\&\f(CW$about\fR\->{no_display}, \f(CW$bool\fR = \f(CW$about\fR\->\fBno_display()\fR, \f(CW$uuid\fR = \f(CW$about\fR\->{uuid}, +\&\f(CW$uuid\fR = \f(CW$about\fR\->\fBuuid()\fR, \f(CW$uuid\fR = \f(CW$about\fR\->{eid}, \f(CW$uuid\fR = \f(CW$about\fR\->\fBeid()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Amnesty \- Facet for assertion amnesty." +.IX Subsection "Test2::EventFacet::Amnesty - Facet for assertion amnesty." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$amnesty\fR\->{details}, \f(CW$string\fR = \f(CW$amnesty\fR\->\fBdetails()\fR, \f(CW$short_string\fR += \f(CW$amnesty\fR\->{tag}, \f(CW$short_string\fR = \f(CW$amnesty\fR\->\fBtag()\fR, \f(CW$bool\fR = +\&\f(CW$amnesty\fR\->{inherited}, \f(CW$bool\fR = \f(CW$amnesty\fR\->\fBinherited()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Assert \- Facet representing an assertion." +.IX Subsection "Test2::EventFacet::Assert - Facet representing an assertion." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$assert\fR\->{details}, \f(CW$string\fR = \f(CW$assert\fR\->\fBdetails()\fR, \f(CW$bool\fR = +\&\f(CW$assert\fR\->{pass}, \f(CW$bool\fR = \f(CW$assert\fR\->\fBpass()\fR, \f(CW$bool\fR = \f(CW$assert\fR\->{no_debug}, +\&\f(CW$bool\fR = \f(CW$assert\fR\->\fBno_debug()\fR, \f(CW$int\fR = \f(CW$assert\fR\->{number}, \f(CW$int\fR = +\&\f(CW$assert\fR\->\fBnumber()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Control \- Facet for hub actions and behaviors." +.IX Subsection "Test2::EventFacet::Control - Facet for hub actions and behaviors." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$control\fR\->{details}, \f(CW$string\fR = \f(CW$control\fR\->\fBdetails()\fR, \f(CW$bool\fR = +\&\f(CW$control\fR\->{global}, \f(CW$bool\fR = \f(CW$control\fR\->\fBglobal()\fR, \f(CW$exit\fR = +\&\f(CW$control\fR\->{terminate}, \f(CW$exit\fR = \f(CW$control\fR\->\fBterminate()\fR, \f(CW$bool\fR = +\&\f(CW$control\fR\->{halt}, \f(CW$bool\fR = \f(CW$control\fR\->\fBhalt()\fR, \f(CW$bool\fR = +\&\f(CW$control\fR\->{has_callback}, \f(CW$bool\fR = \f(CW$control\fR\->\fBhas_callback()\fR, \f(CW$encoding\fR = +\&\f(CW$control\fR\->{encoding}, \f(CW$encoding\fR = \f(CW$control\fR\->\fBencoding()\fR, \f(CW$phase\fR = +\&\f(CW$control\fR\->{phase}, \f(CW$phase\fR = \f(CW$control\fR\->\fBphase()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Error \- Facet for errors that need to be shown." +.IX Subsection "Test2::EventFacet::Error - Facet for errors that need to be shown." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$error\fR\->{details}, \f(CW$string\fR = \f(CW$error\fR\->\fBdetails()\fR, \f(CW$short_string\fR = +\&\f(CW$error\fR\->{tag}, \f(CW$short_string\fR = \f(CW$error\fR\->\fBtag()\fR, \f(CW$bool\fR = \f(CW$error\fR\->{fail}, \f(CW$bool\fR += \f(CW$error\fR\->\fBfail()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Hub \- Facet for the hubs an event passes through." +.IX Subsection "Test2::EventFacet::Hub - Facet for the hubs an event passes through." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "FACET FIELDS" 4 +.IX Item "FACET FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$trace\fR\->{details}, \f(CW$string\fR = \f(CW$trace\fR\->\fBdetails()\fR, \f(CW$int\fR = +\&\f(CW$trace\fR\->{pid}, \f(CW$int\fR = \f(CW$trace\fR\->\fBpid()\fR, \f(CW$int\fR = \f(CW$trace\fR\->{tid}, \f(CW$int\fR = +\&\f(CW$trace\fR\->\fBtid()\fR, \f(CW$hid\fR = \f(CW$trace\fR\->{hid}, \f(CW$hid\fR = \f(CW$trace\fR\->\fBhid()\fR, \f(CW$huuid\fR = +\&\f(CW$trace\fR\->{huuid}, \f(CW$huuid\fR = \f(CW$trace\fR\->\fBhuuid()\fR, \f(CW$int\fR = \f(CW$trace\fR\->{nested}, \f(CW$int\fR = +\&\f(CW$trace\fR\->\fBnested()\fR, \f(CW$bool\fR = \f(CW$trace\fR\->{buffered}, \f(CW$bool\fR = \f(CW$trace\fR\->\fBbuffered()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Info \- Facet for information a developer might care about." +.IX Subsection "Test2::EventFacet::Info - Facet for information a developer might care about." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTES 4 +.IX Item "NOTES" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string_or_structure\fR = \f(CW$info\fR\->{details}, \f(CW$string_or_structure\fR = +\&\f(CW$info\fR\->\fBdetails()\fR, \f(CW$structure\fR = \f(CW$info\fR\->{table}, \f(CW$structure\fR = \f(CW$info\fR\->\fBtable()\fR, +\&\f(CW$short_string\fR = \f(CW$info\fR\->{tag}, \f(CW$short_string\fR = \f(CW$info\fR\->\fBtag()\fR, \f(CW$bool\fR = +\&\f(CW$info\fR\->{debug}, \f(CW$bool\fR = \f(CW$info\fR\->\fBdebug()\fR, \f(CW$bool\fR = \f(CW$info\fR\->{important}, \f(CW$bool\fR = +\&\f(CW$info\fR\->important +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Info::Table \- Intermediary representation of a table." +.IX Subsection "Test2::EventFacet::Info::Table - Intermediary representation of a table." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP ATTRIBUTES 4 +.IX Item "ATTRIBUTES" +.PD +\&\f(CW$header_aref\fR = \f(CW$t\fR\->\fBheader()\fR, \f(CW$rows_aref\fR = \f(CW$t\fR\->\fBrows()\fR, \f(CW$bool\fR = +\&\f(CW$t\fR\->\fBcollapse()\fR, \f(CW$aref\fR = \f(CW$t\fR\->\fBno_collapse()\fR, \f(CW$str\fR = \f(CW$t\fR\->\fBas_string()\fR, \f(CW$href\fR = +\&\f(CW$t\fR\->\fBas_hash()\fR, \f(CW%args\fR = \f(CW$t\fR\->\fBinfo_args()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Meta \- Facet for meta-data" +.IX Subsection "Test2::EventFacet::Meta - Facet for meta-data" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "METHODS AND FIELDS" 4 +.IX Item "METHODS AND FIELDS" +.PD +\&\f(CW$anything\fR = \f(CW$meta\fR\->{anything}, \f(CW$anything\fR = \f(CW$meta\fR\->\fBanything()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Parent \- Facet for events contains other events" +.IX Subsection "Test2::EventFacet::Parent - Facet for events contains other events" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$parent\fR\->{details}, \f(CW$string\fR = \f(CW$parent\fR\->\fBdetails()\fR, \f(CW$hid\fR = +\&\f(CW$parent\fR\->{hid}, \f(CW$hid\fR = \f(CW$parent\fR\->\fBhid()\fR, \f(CW$arrayref\fR = \f(CW$parent\fR\->{children}, +\&\f(CW$arrayref\fR = \f(CW$parent\fR\->\fBchildren()\fR, \f(CW$bool\fR = \f(CW$parent\fR\->{buffered}, \f(CW$bool\fR = +\&\f(CW$parent\fR\->\fBbuffered()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Plan \- Facet for setting the plan" +.IX Subsection "Test2::EventFacet::Plan - Facet for setting the plan" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$plan\fR\->{details}, \f(CW$string\fR = \f(CW$plan\fR\->\fBdetails()\fR, \f(CW$positive_int\fR = +\&\f(CW$plan\fR\->{count}, \f(CW$positive_int\fR = \f(CW$plan\fR\->\fBcount()\fR, \f(CW$bool\fR = \f(CW$plan\fR\->{skip}, +\&\f(CW$bool\fR = \f(CW$plan\fR\->\fBskip()\fR, \f(CW$bool\fR = \f(CW$plan\fR\->{none}, \f(CW$bool\fR = \f(CW$plan\fR\->\fBnone()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Render \- Facet that dictates how to render an event." +.IX Subsection "Test2::EventFacet::Render - Facet that dictates how to render an event." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FIELDS 4 +.IX Item "FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$render\fR\->[#]\->{details}, \f(CW$string\fR = \f(CW$render\fR\->[#]\->\fBdetails()\fR, +\&\f(CW$string\fR = \f(CW$render\fR\->[#]\->{tag}, \f(CW$string\fR = \f(CW$render\fR\->[#]\->\fBtag()\fR, \f(CW$string\fR = +\&\f(CW$render\fR\->[#]\->{facet}, \f(CW$string\fR = \f(CW$render\fR\->[#]\->\fBfacet()\fR, \f(CW$mode\fR = +\&\f(CW$render\fR\->[#]\->{mode}, \f(CW$mode\fR = \f(CW$render\fR\->[#]\->\fBmode()\fR, calculated, replace +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::EventFacet::Trace \- Debug information for events" +.IX Subsection "Test2::EventFacet::Trace - Debug information for events" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP "FACET FIELDS" 4 +.IX Item "FACET FIELDS" +.PD +\&\f(CW$string\fR = \f(CW$trace\fR\->{details}, \f(CW$string\fR = \f(CW$trace\fR\->\fBdetails()\fR, \f(CW$frame\fR = +\&\f(CW$trace\fR\->{frame}, \f(CW$frame\fR = \f(CW$trace\fR\->\fBframe()\fR, \f(CW$int\fR = \f(CW$trace\fR\->{pid}, \f(CW$int\fR = +\&\f(CW$trace\fR\->\fBpid()\fR, \f(CW$int\fR = \f(CW$trace\fR\->{tid}, \f(CW$int\fR = \f(CW$trace\fR\->\fBtid()\fR, \f(CW$id\fR = +\&\f(CW$trace\fR\->{cid}, \f(CW$id\fR = \f(CW$trace\fR\->\fBcid()\fR, \f(CW$uuid\fR = \f(CW$trace\fR\->{uuid}, \f(CW$uuid\fR = +\&\f(CW$trace\fR\->\fBuuid()\fR, ($pkg, \f(CW$file\fR, \f(CW$line\fR, \f(CW$subname\fR) = \f(CW$trace\fR\->call, \f(CW@caller\fR = +\&\f(CW$trace\fR\->full_call, \f(CW$warning_bits\fR = \f(CW$trace\fR\->warning_bits +.RS 4 +.IP "DISCOURAGED HUB RELATED FIELDS" 4 +.IX Item "DISCOURAGED HUB RELATED FIELDS" +\&\f(CW$hid\fR = \f(CW$trace\fR\->{hid}, \f(CW$hid\fR = \f(CW$trace\fR\->\fBhid()\fR, \f(CW$huuid\fR = \f(CW$trace\fR\->{huuid}, +\&\f(CW$huuid\fR = \f(CW$trace\fR\->\fBhuuid()\fR, \f(CW$int\fR = \f(CW$trace\fR\->{nested}, \f(CW$int\fR = \f(CW$trace\fR\->\fBnested()\fR, +\&\f(CW$bool\fR = \f(CW$trace\fR\->{buffered}, \f(CW$bool\fR = \f(CW$trace\fR\->\fBbuffered()\fR +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +\&\f(CW$trace\fR\->set_detail($msg), \f(CW$msg\fR = \f(CW$trace\fR\->detail, \f(CW$str\fR = \f(CW$trace\fR\->debug, +\&\f(CW$trace\fR\->alert($MESSAGE), \f(CW$trace\fR\->throw($MESSAGE), ($package, \f(CW$file\fR, \f(CW$line\fR, +\&\f(CW$subname\fR) = \f(CW$trace\fR\->\fBcall()\fR, \f(CW$pkg\fR = \f(CW$trace\fR\->package, \f(CW$file\fR = \f(CW$trace\fR\->file, +\&\f(CW$line\fR = \f(CW$trace\fR\->line, \f(CW$subname\fR = \f(CW$trace\fR\->subname, \f(CW$sig\fR = trace\->signature +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Formatter \- Namespace for formatters." +.IX Subsection "Test2::Formatter - Namespace for formatters." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "CREATING FORMATTERS" 4 +.IX Item "CREATING FORMATTERS" +.PD +The number of tests that were planned, The number of tests actually seen, +The number of tests which failed, A boolean indicating whether or not the +test suite passed, A boolean indicating whether or not this call is for a +subtest +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Formatter::TAP \- Standard TAP formatter" +.IX Subsection "Test2::Formatter::TAP - Standard TAP formatter" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$bool\fR = \f(CW$tap\fR\->no_numbers, \f(CW$tap\fR\->set_no_numbers($bool), \f(CW$arrayref\fR = +\&\f(CW$tap\fR\->handles, \f(CW$tap\fR\->set_handles(\e@handles);, \f(CW$encoding\fR = \f(CW$tap\fR\->encoding, +\&\f(CW$tap\fR\->encoding($encoding), \f(CW$tap\fR\->write($e, \f(CW$num\fR) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org>, Kent Fredric +<kentnl@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Hub \- The conduit through which all events flow." +.IX Subsection "Test2::Hub - The conduit through which all events flow." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "COMMON TASKS" 4 +.IX Item "COMMON TASKS" +.RS 4 +.IP "SENDING EVENTS" 4 +.IX Item "SENDING EVENTS" +.IP "ALTERING OR REMOVING EVENTS" 4 +.IX Item "ALTERING OR REMOVING EVENTS" +.IP "LISTENING FOR EVENTS" 4 +.IX Item "LISTENING FOR EVENTS" +.IP "POST-TEST BEHAVIORS" 4 +.IX Item "POST-TEST BEHAVIORS" +.IP "SETTING THE FORMATTER" 4 +.IX Item "SETTING THE FORMATTER" +.RE +.RS 4 +.RE +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$hub\fR\->send($event), \f(CW$hub\fR\->process($event), \f(CW$old\fR = \f(CW$hub\fR\->format($formatter), +\&\f(CW$sub\fR = \f(CW$hub\fR\->listen(sub { ... }, \f(CW%optional_params\fR), \f(CW$hub\fR\->unlisten($sub), +\&\f(CW$sub\fR = \f(CW$hub\fR\->filter(sub { ... }, \f(CW%optional_params\fR), \f(CW$sub\fR = +\&\f(CW$hub\fR\->pre_filter(sub { ... }, \f(CW%optional_params\fR), \f(CW$hub\fR\->unfilter($sub), +\&\f(CW$hub\fR\->pre_unfilter($sub), \f(CW$hub\fR\->follow_op(sub { ... }), \f(CW$sub\fR = +\&\f(CW$hub\fR\->add_context_acquire(sub { ... });, +\&\f(CW$hub\fR\->remove_context_acquire($sub);, \f(CW$sub\fR = \f(CW$hub\fR\->add_context_init(sub { +\&... });, \f(CW$hub\fR\->remove_context_init($sub);, \f(CW$sub\fR = +\&\f(CW$hub\fR\->add_context_release(sub { ... });, +\&\f(CW$hub\fR\->remove_context_release($sub);, \f(CW$hub\fR\->\fBcull()\fR, \f(CW$pid\fR = \f(CW$hub\fR\->\fBpid()\fR, \f(CW$tid\fR += \f(CW$hub\fR\->\fBtid()\fR, \f(CW$hud\fR = \f(CW$hub\fR\->\fBhid()\fR, \f(CW$uuid\fR = \f(CW$hub\fR\->\fBuuid()\fR, \f(CW$ipc\fR = +\&\f(CW$hub\fR\->\fBipc()\fR, \f(CW$hub\fR\->set_no_ending($bool), \f(CW$bool\fR = \f(CW$hub\fR\->no_ending, \f(CW$bool\fR = +\&\f(CW$hub\fR\->active, \f(CW$hub\fR\->set_active($bool) +.RS 4 +.IP "STATE METHODS" 4 +.IX Item "STATE METHODS" +\&\f(CW$hub\fR\->\fBreset_state()\fR, \f(CW$num\fR = \f(CW$hub\fR\->count, \f(CW$num\fR = \f(CW$hub\fR\->failed, \f(CW$bool\fR = +\&\f(CW$hub\fR\->ended, \f(CW$bool\fR = \f(CW$hub\fR\->is_passing, \f(CW$hub\fR\->is_passing($bool), +\&\f(CW$hub\fR\->plan($plan), \f(CW$plan\fR = \f(CW$hub\fR\->plan, \f(CW$bool\fR = \f(CW$hub\fR\->check_plan +.RE +.RS 4 +.RE +.IP "THIRD PARTY META-DATA" 4 +.IX Item "THIRD PARTY META-DATA" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Hub::Interceptor \- Hub used by interceptor to grab results." +.IX Subsection "Test2::Hub::Interceptor - Hub used by interceptor to grab results." +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Hub::Interceptor::Terminator \- Exception class used by Test2::Hub::Interceptor" +.IX Subsection "Test2::Hub::Interceptor::Terminator - Exception class used by Test2::Hub::Interceptor" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Hub::Subtest \- Hub used by subtests" +.IX Subsection "Test2::Hub::Subtest - Hub used by subtests" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP TOGGLES 4 +.IX Item "TOGGLES" +.PD +\&\f(CW$bool\fR = \f(CW$hub\fR\->manual_skip_all, \f(CW$hub\fR\->set_manual_skip_all($bool) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::IPC \- Turn on IPC for threading or forking support." +.IX Subsection "Test2::IPC - Turn on IPC for threading or forking support." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP "DISABLING IT" 4 +.IX Item "DISABLING IT" +.RE +.RS 4 +.RE +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +\&\fBcull()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::IPC::Driver \- Base class for Test2 IPC drivers." +.IX Subsection "Test2::IPC::Driver - Base class for Test2 IPC drivers." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\f(CW$self\fR\->abort($msg), \f(CW$self\fR\->abort_trace($msg) +.IP "LOADING DRIVERS" 4 +.IX Item "LOADING DRIVERS" +.PD 0 +.IP "WRITING DRIVERS" 4 +.IX Item "WRITING DRIVERS" +.RS 4 +.IP "METHODS SUBCLASSES MUST IMPLEMENT" 4 +.IX Item "METHODS SUBCLASSES MUST IMPLEMENT" +.PD +\&\f(CW$ipc\fR\->is_viable, \f(CW$ipc\fR\->add_hub($hid), \f(CW$ipc\fR\->drop_hub($hid), +\&\f(CW$ipc\fR\->send($hid, \f(CW$event\fR);, \f(CW$ipc\fR\->send($hid, \f(CW$event\fR, \f(CW$global\fR);, \f(CW@events\fR = +\&\f(CW$ipc\fR\->cull($hid), \f(CW$ipc\fR\->\fBwaiting()\fR +.IP "METHODS SUBCLASSES MAY IMPLEMENT OR OVERRIDE" 4 +.IX Item "METHODS SUBCLASSES MAY IMPLEMENT OR OVERRIDE" +\&\f(CW$ipc\fR\->driver_abort($msg) +.RE +.RS 4 +.RE +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::IPC::Driver::Files \- Temp dir + Files concurrency model." +.IX Subsection "Test2::IPC::Driver::Files - Temp dir + Files concurrency model." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP "ENVIRONMENT VARIABLES" 4 +.IX Item "ENVIRONMENT VARIABLES" +.PD +T2_KEEP_TEMPDIR=0, T2_TEMPDIR_TEMPLATE='test2\-XXXXXX' +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Tools::Tiny \- Tiny set of tools for unfortunate souls who cannot use Test2::Suite." +.IX Subsection "Test2::Tools::Tiny - Tiny set of tools for unfortunate souls who cannot use Test2::Suite." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "USE Test2::Suite INSTEAD" 4 +.IX Item "USE Test2::Suite INSTEAD" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +ok($bool, \f(CW$name\fR), ok($bool, \f(CW$name\fR, \f(CW@diag\fR), is($got, \f(CW$want\fR, \f(CW$name\fR), is($got, +\&\f(CW$want\fR, \f(CW$name\fR, \f(CW@diag\fR), isnt($got, \f(CW$do_not_want\fR, \f(CW$name\fR), isnt($got, +\&\f(CW$do_not_want\fR, \f(CW$name\fR, \f(CW@diag\fR), like($got, \f(CW$regex\fR, \f(CW$name\fR), like($got, \f(CW$regex\fR, +\&\f(CW$name\fR, \f(CW@diag\fR), unlike($got, \f(CW$regex\fR, \f(CW$name\fR), unlike($got, \f(CW$regex\fR, \f(CW$name\fR, +\&\f(CW@diag\fR), is_deeply($got, \f(CW$want\fR, \f(CW$name\fR), is_deeply($got, \f(CW$want\fR, \f(CW$name\fR, +\&\f(CW@diag\fR), diag($msg), note($msg), skip_all($reason), todo \f(CW$reason\fR => sub { +\&... }, plan($count), \fBdone_testing()\fR, \f(CW$warnings\fR = warnings { ... }, +\&\f(CW$exception\fR = exception { ... }, tests \f(CW$name\fR => sub { ... }, \f(CW$output\fR = +capture { ... } +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Transition \- Transition notes when upgrading to Test2" +.IX Subsection "Test2::Transition - Transition notes when upgrading to Test2" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "THINGS THAT BREAK" 4 +.IX Item "THINGS THAT BREAK" +.RS 4 +.IP "Test::Builder1.5/2 conditionals" 4 +.IX Item "Test::Builder1.5/2 conditionals" +.IP "Replacing the Test::Builder singleton" 4 +.IX Item "Replacing the Test::Builder singleton" +.IP "Directly Accessing Hash Elements" 4 +.IX Item "Directly Accessing Hash Elements" +.IP "Subtest indentation" 4 +.IX Item "Subtest indentation" +.RE +.RS 4 +.RE +.IP "DISTRIBUTIONS THAT BREAK OR NEED TO BE UPGRADED" 4 +.IX Item "DISTRIBUTIONS THAT BREAK OR NEED TO BE UPGRADED" +.RS 4 +.IP "WORKS BUT TESTS WILL FAIL" 4 +.IX Item "WORKS BUT TESTS WILL FAIL" +.PD +Test::DBIx::Class::Schema, Device::Chip +.IP "UPGRADE SUGGESTED" 4 +.IX Item "UPGRADE SUGGESTED" +Test::Exception, Data::Peek, circular::require, Test::Module::Used, +Test::Moose::More, Test::FITesque, Test::Kit, autouse +.IP "NEED TO UPGRADE" 4 +.IX Item "NEED TO UPGRADE" +Test::SharedFork, Test::Builder::Clutch, Test::Dist::VersionSync, +Test::Modern, Test::UseAllModules, Test::More::Prefix +.IP "STILL BROKEN" 4 +.IX Item "STILL BROKEN" +Test::Aggregate, Test::Wrapper, Test::ParallelSubtest, Test::Pretty, +Net::BitTorrent, Test::Group, Test::Flatten, +Log::Dispatch::Config::TestLog, Test::Able +.RE +.RS 4 +.RE +.IP "MAKE ASSERTIONS \-> SEND EVENTS" 4 +.IX Item "MAKE ASSERTIONS -> SEND EVENTS" +.RS 4 +.PD 0 +.IP LEGACY 4 +.IX Item "LEGACY" +.IP TEST2 4 +.IX Item "TEST2" +.PD +ok($bool, \f(CW$name\fR), diag(@messages), note(@messages), subtest($name, \f(CW$code\fR) +.RE +.RS 4 +.RE +.IP "WRAP EXISTING TOOLS" 4 +.IX Item "WRAP EXISTING TOOLS" +.RS 4 +.PD 0 +.IP LEGACY 4 +.IX Item "LEGACY" +.IP TEST2 4 +.IX Item "TEST2" +.RE +.RS 4 +.RE +.IP "USING UTF8" 4 +.IX Item "USING UTF8" +.RS 4 +.IP LEGACY 4 +.IX Item "LEGACY" +.IP TEST2 4 +.IX Item "TEST2" +.RE +.RS 4 +.RE +.IP "AUTHORS, CONTRIBUTORS AND REVIEWERS" 4 +.IX Item "AUTHORS, CONTRIBUTORS AND REVIEWERS" +.PD +Chad Granum (EXODIST) <exodist@cpan.org> +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.PD +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Util \- Tools used by Test2 and friends." +.IX Subsection "Test2::Util - Tools used by Test2 and friends." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +($success, \f(CW$error\fR) = try { ... }, protect { ... }, CAN_FORK, +CAN_REALLY_FORK, CAN_THREAD, USE_THREADS, get_tid, my \f(CW$file\fR = +pkg_to_file($package), \f(CW$string\fR = \fBipc_separator()\fR, \f(CW$string\fR = \fBgen_uid()\fR, +($ok, \f(CW$err\fR) = do_rename($old_name, \f(CW$new_name\fR), ($ok, \f(CW$err\fR) = +do_unlink($filename), ($ok, \f(CW$err\fR) = try_sig_mask { ... }, SIGINT, SIGALRM, +SIGHUP, SIGTERM, SIGUSR1, SIGUSR2 +.IP "NOTES && CAVEATS" 4 +.IX Item "NOTES && CAVEATS" +Devel::Cover +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org>, Kent Fredric +<kentnl@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Util::ExternalMeta \- Allow third party tools to safely attach meta-data to your instances." +.IX Subsection "Test2::Util::ExternalMeta - Allow third party tools to safely attach meta-data to your instances." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP "WHERE IS THE DATA STORED?" 4 +.IX Item "WHERE IS THE DATA STORED?" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +\&\f(CW$val\fR = \f(CW$obj\fR\->meta($key), \f(CW$val\fR = \f(CW$obj\fR\->meta($key, \f(CW$default\fR), \f(CW$val\fR = +\&\f(CW$obj\fR\->get_meta($key), \f(CW$val\fR = \f(CW$obj\fR\->delete_meta($key), \f(CW$obj\fR\->set_meta($key, +\&\f(CW$val\fR) +.IP "META-KEY RESTRICTIONS" 4 +.IX Item "META-KEY RESTRICTIONS" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Util::Facets2Legacy \- Convert facet data to the legacy event API." +.IX Subsection "Test2::Util::Facets2Legacy - Convert facet data to the legacy event API." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.RS 4 +.IP "AS METHODS" 4 +.IX Item "AS METHODS" +.IP "AS FUNCTIONS" 4 +.IX Item "AS FUNCTIONS" +.RE +.RS 4 +.RE +.IP "NOTE ON CYCLES" 4 +.IX Item "NOTE ON CYCLES" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +\&\f(CW$bool\fR = \f(CW$e\fR\->\fBcauses_fail()\fR, \f(CW$bool\fR = causes_fail($f), \f(CW$bool\fR = +\&\f(CW$e\fR\->\fBdiagnostics()\fR, \f(CW$bool\fR = diagnostics($f), \f(CW$bool\fR = \f(CW$e\fR\->\fBglobal()\fR, \f(CW$bool\fR = +global($f), \f(CW$bool\fR = \f(CW$e\fR\->\fBincrements_count()\fR, \f(CW$bool\fR = increments_count($f), +\&\f(CW$bool\fR = \f(CW$e\fR\->\fBno_display()\fR, \f(CW$bool\fR = no_display($f), ($max, \f(CW$directive\fR, +\&\f(CW$reason\fR) = \f(CW$e\fR\->\fBsets_plan()\fR, ($max, \f(CW$directive\fR, \f(CW$reason\fR) = sets_plan($f), +\&\f(CW$id\fR = \f(CW$e\fR\->\fBsubtest_id()\fR, \f(CW$id\fR = subtest_id($f), \f(CW$string\fR = \f(CW$e\fR\->\fBsummary()\fR, +\&\f(CW$string\fR = summary($f), \f(CW$undef_or_int\fR = \f(CW$e\fR\->\fBterminate()\fR, \f(CW$undef_or_int\fR = +terminate($f), \f(CW$uuid\fR = \f(CW$e\fR\->\fBuuid()\fR, \f(CW$uuid\fR = uuid($f) +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Util::HashBase \- Build hash based classes." +.IX Subsection "Test2::Util::HashBase - Build hash based classes." +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "THIS IS A BUNDLED COPY OF HASHBASE" 4 +.IX Item "THIS IS A BUNDLED COPY OF HASHBASE" +.IP METHODS 4 +.IX Item "METHODS" +.RS 4 +.IP "PROVIDED BY HASH BASE" 4 +.IX Item "PROVIDED BY HASH BASE" +.PD +\&\f(CW$it\fR = \f(CW$class\fR\->new(%PAIRS), \f(CW$it\fR = \f(CW$class\fR\->new(\e%PAIRS), \f(CW$it\fR = +\&\f(CW$class\fR\->new(\e@ORDERED_VALUES) +.IP HOOKS 4 +.IX Item "HOOKS" +\&\f(CW$self\fR\->\fBinit()\fR +.RE +.RS 4 +.RE +.IP ACCESSORS 4 +.IX Item "ACCESSORS" +.RS 4 +.PD 0 +.IP READ/WRITE 4 +.IX Item "READ/WRITE" +.PD +\&\fBfoo()\fR, \fBset_foo()\fR, \fBFOO()\fR +.IP "READ ONLY" 4 +.IX Item "READ ONLY" +\&\fBset_foo()\fR +.IP "DEPRECATED SETTER" 4 +.IX Item "DEPRECATED SETTER" +\&\fBset_foo()\fR +.IP "NO SETTER" 4 +.IX Item "NO SETTER" +.PD 0 +.IP "NO READER" 4 +.IX Item "NO READER" +.IP "CONSTANT ONLY" 4 +.IX Item "CONSTANT ONLY" +.RE +.RS 4 +.RE +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.IP "GETTING A LIST OF ATTRIBUTES FOR A CLASS" 4 +.IX Item "GETTING A LIST OF ATTRIBUTES FOR A CLASS" +.PD +\&\f(CW@list\fR = Test2::Util::HashBase::attr_list($class), \f(CW@list\fR = +\&\f(CW$class\fR\->\fBTest2::Util::HashBase::attr_list()\fR +.IP SOURCE 4 +.IX Item "SOURCE" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test2::Util::Trace \- Legacy wrapper fro Test2::EventFacet::Trace." +.IX Subsection "Test2::Util::Trace - Legacy wrapper fro Test2::EventFacet::Trace." +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::Builder \- Backend for building test libraries" +.IX Subsection "Test::Builder - Backend for building test libraries" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Construction 4 +.IX Item "Construction" +.PD +\&\fBnew\fR, \fBcreate\fR, \fBsubtest\fR, \fBname\fR, \fBreset\fR +.IP "Setting up tests" 4 +.IX Item "Setting up tests" +\&\fBplan\fR, \fBexpected_tests\fR, \fBno_plan\fR, \fBdone_testing\fR, \fBhas_plan\fR, +\&\fBskip_all\fR, \fBexported_to\fR +.IP "Running tests" 4 +.IX Item "Running tests" +\&\fBok\fR, \fBis_eq\fR, \fBis_num\fR, \fBisnt_eq\fR, \fBisnt_num\fR, \fBlike\fR, \fBunlike\fR, +\&\fBcmp_ok\fR +.IP "Other Testing Methods" 4 +.IX Item "Other Testing Methods" +\&\fBBAIL_OUT\fR, \fBskip\fR, \fBtodo_skip\fR, \fBskip_rest\fR +.IP "Test building utility methods" 4 +.IX Item "Test building utility methods" +\&\fBmaybe_regex\fR, \fBis_fh\fR +.RE +.RS 4 +.RE +.IP "Test style" 4 +.IX Item "Test style" +\&\fBlevel\fR, \fBuse_numbers\fR, \fBno_diag\fR, \fBno_ending\fR, \fBno_header\fR +.IP Output 4 +.IX Item "Output" +\&\fBdiag\fR, \fBnote\fR, \fBexplain\fR, \fBoutput\fR, \fBfailure_output\fR, \fBtodo_output\fR, +reset_outputs, carp, croak +.IP "Test Status and Info" 4 +.IX Item "Test Status and Info" +\&\fBno_log_results\fR, \fBcurrent_test\fR, \fBis_passing\fR, \fBsummary\fR, \fBdetails\fR, +\&\fBtodo\fR, \fBfind_TODO\fR, \fBin_todo\fR, \fBtodo_start\fR, \f(CW\*(C`todo_end\*(C'\fR, \fBcaller\fR +.IP "EXIT CODES" 4 +.IX Item "EXIT CODES" +.PD 0 +.IP THREADS 4 +.IX Item "THREADS" +.IP MEMORY 4 +.IX Item "MEMORY" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP INTERNALS 4 +.IX Item "INTERNALS" +.IP LEGACY 4 +.IX Item "LEGACY" +.IP EXTERNAL 4 +.IX Item "EXTERNAL" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::Builder::Formatter \- Test::Builder subclass of Test2::Formatter::TAP" +.IX Subsection "Test::Builder::Formatter - Test::Builder subclass of Test2::Formatter::TAP" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::Builder::IO::Scalar \- A copy of IO::Scalar for Test::Builder" +.IX Subsection "Test::Builder::IO::Scalar - A copy of IO::Scalar for Test::Builder" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "COPYRIGHT and LICENSE" 4 +.IX Item "COPYRIGHT and LICENSE" +.IP Construction 4 +.IX Item "Construction" +.PD +.PP +new [ARGS...] +.PP +open [SCALARREF] +.PP +opened +.PP +close +.IP "Input and output" 4 +.IX Item "Input and output" +.PP +flush +.PP +getc +.PP +getline +.PP +getlines +.PP +print ARGS.. +.PP +read BUF, NBYTES, [OFFSET] +.PP +write BUF, NBYTES, [OFFSET] +.PP +sysread BUF, LEN, [OFFSET] +.PP +syswrite BUF, NBYTES, [OFFSET] +.IP "Seeking/telling and other attributes" 4 +.IX Item "Seeking/telling and other attributes" +.PP +autoflush +.PP +binmode +.PP +clearerr +.PP +eof +.PP +seek OFFSET, WHENCE +.PP +sysseek OFFSET, WHENCE +.PP +tell +.PP +.Vb 1 +\& use_RS [YESNO] +.Ve +.PP +setpos POS +.PP +getpos +.PP +sref +.IP WARNINGS 4 +.IX Item "WARNINGS" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.RS 4 +.IP "Primary Maintainer" 4 +.IX Item "Primary Maintainer" +.IP "Principal author" 4 +.IX Item "Principal author" +.IP "Other contributors" 4 +.IX Item "Other contributors" +.RE +.RS 4 +.RE +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Test::Builder::Module \- Base class for test modules" +.IX Subsection "Test::Builder::Module - Base class for test modules" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Importing 4 +.IX Item "Importing" +.RE +.RS 4 +.RE +.IP Builder 4 +.IX Item "Builder" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Test::Builder::Tester \- test testsuites that have been built with Test::Builder" +.IX Subsection "Test::Builder::Tester - test testsuites that have been built with Test::Builder" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP Functions 4 +.IX Item "Functions" +.PD +test_out, test_err +.PP +test_fail +.PP +test_diag +.PP +test_test, title (synonym 'name', 'label'), skip_out, skip_err +.PP +line_num +.PP +color +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Test::Builder::Tester::Color \- turn on colour in Test::Builder::Tester" +.IX Subsection "Test::Builder::Tester::Color - turn on colour in Test::Builder::Tester" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Test::Builder::TodoDiag \- Test::Builder subclass of Test2::Event::Diag" +.IX Subsection "Test::Builder::TodoDiag - Test::Builder subclass of Test2::Event::Diag" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP AUTHORS 4 +.IX Item "AUTHORS" +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::Harness \- Run Perl standard test scripts with statistics" +.IX Subsection "Test::Harness - Run Perl standard test scripts with statistics" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.ie n .IP "runtests( @test_files )" 4 +.el .IP "runtests( \f(CW@test_files\fR )" 4 +.IX Item "runtests( @test_files )" +.RE +.RS 4 +.RE +.IP "execute_tests( tests => \e@test_files, out => \e*FH )" 4 +.IX Item "execute_tests( tests => @test_files, out => *FH )" +.IP EXPORT 4 +.IX Item "EXPORT" +.IP "ENVIRONMENT VARIABLES THAT TAP::HARNESS::COMPATIBLE SETS" 4 +.IX Item "ENVIRONMENT VARIABLES THAT TAP::HARNESS::COMPATIBLE SETS" +.PD +\&\f(CW\*(C`HARNESS_ACTIVE\*(C'\fR, \f(CW\*(C`HARNESS_VERSION\*(C'\fR +.IP "ENVIRONMENT VARIABLES THAT AFFECT TEST::HARNESS" 4 +.IX Item "ENVIRONMENT VARIABLES THAT AFFECT TEST::HARNESS" +\&\f(CW\*(C`HARNESS_PERL_SWITCHES\*(C'\fR, \f(CW\*(C`HARNESS_TIMER\*(C'\fR, \f(CW\*(C`HARNESS_VERBOSE\*(C'\fR, +\&\f(CW\*(C`HARNESS_OPTIONS\*(C'\fR, \f(CW\*(C`j<n>\*(C'\fR, \f(CW\*(C`c\*(C'\fR, \f(CW\*(C`a<file.tgz>\*(C'\fR, \f(CW\*(C`fPackage\-With\-Dashes\*(C'\fR, \f(CW\*(C`HARNESS_SUBCLASS\*(C'\fR, +\&\f(CW\*(C`HARNESS_SUMMARY_COLOR_SUCCESS\*(C'\fR, \f(CW\*(C`HARNESS_SUMMARY_COLOR_FAIL\*(C'\fR +.IP "Taint Mode" 4 +.IX Item "Taint Mode" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "LICENCE AND COPYRIGHT" 4 +.IX Item "LICENCE AND COPYRIGHT" +.PD +.SS "Test::More \- yet another framework for writing test scripts" +.IX Subsection "Test::More - yet another framework for writing test scripts" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "I love it when a plan comes together" 4 +.IX Item "I love it when a plan comes together" +.RE +.RS 4 +.RE +.PD +.PP +\&\fBdone_testing\fR +.IP "Test names" 4 +.IX Item "Test names" +.PD 0 +.IP "I'm ok, you're not ok." 4 +.IX Item "I'm ok, you're not ok." +.PD +\&\fBok\fR +.PP +\&\fBis\fR, \fBisnt\fR +.PP +\&\fBlike\fR +.PP +\&\fBunlike\fR +.PP +\&\fBcmp_ok\fR +.PP +\&\fBcan_ok\fR +.PP +\&\fBisa_ok\fR +.PP +\&\fBnew_ok\fR +.PP +\&\fBsubtest\fR +.PP +\&\fBpass\fR, \fBfail\fR +.IP "Module tests" 4 +.IX Item "Module tests" +\&\fBrequire_ok\fR +.PP +\&\fBuse_ok\fR +.IP "Complex data structures" 4 +.IX Item "Complex data structures" +\&\fBis_deeply\fR +.IP Diagnostics 4 +.IX Item "Diagnostics" +\&\fBdiag\fR, \fBnote\fR +.PP +\&\fBexplain\fR +.IP "Conditional tests" 4 +.IX Item "Conditional tests" +\&\fBSKIP: BLOCK\fR +.PP +\&\fBTODO: BLOCK\fR, \fBtodo_skip\fR +.PP +When do I use SKIP vs. TODO? +.IP "Test control" 4 +.IX Item "Test control" +\&\fBBAIL_OUT\fR +.IP "Discouraged comparison functions" 4 +.IX Item "Discouraged comparison functions" +\&\fBeq_array\fR +.PP +\&\fBeq_hash\fR +.PP +\&\fBeq_set\fR +.IP "Extending and Embedding Test::More" 4 +.IX Item "Extending and Embedding Test::More" +\&\fBbuilder\fR +.IP "EXIT CODES" 4 +.IX Item "EXIT CODES" +.PD 0 +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.PD +subtests, \f(CWdone_testing()\fR, \f(CWcmp_ok()\fR, \f(CWnew_ok()\fR \f(CWnote()\fR and +\&\f(CWexplain()\fR +.IP "CAVEATS and NOTES" 4 +.IX Item "CAVEATS and NOTES" +utf8 / "Wide character in print", Overloaded objects, Threads +.IP HISTORY 4 +.IX Item "HISTORY" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.RS 4 +.IP ALTERNATIVES 4 +.IX Item "ALTERNATIVES" +.IP "ADDITIONAL LIBRARIES" 4 +.IX Item "ADDITIONAL LIBRARIES" +.IP "OTHER COMPONENTS" 4 +.IX Item "OTHER COMPONENTS" +.IP BUNDLES 4 +.IX Item "BUNDLES" +.RE +.RS 4 +.RE +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP BUGS 4 +.IX Item "BUGS" +.PD 0 +.IP SOURCE 4 +.IX Item "SOURCE" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.PD +.SS "Test::Simple \- Basic utilities for writing tests." +.IX Subsection "Test::Simple - Basic utilities for writing tests." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\fBok\fR +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP NOTES 4 +.IX Item "NOTES" +.IP HISTORY 4 +.IX Item "HISTORY" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +Test::More +.IP AUTHORS 4 +.IX Item "AUTHORS" +.PD 0 +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::Tester \- Ease testing test modules built with Test::Builder" +.IX Subsection "Test::Tester - Ease testing test modules built with Test::Builder" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "HOW TO USE (THE EASY WAY)" 4 +.IX Item "HOW TO USE (THE EASY WAY)" +.IP "HOW TO USE (THE HARD WAY)" 4 +.IX Item "HOW TO USE (THE HARD WAY)" +.IP "TEST RESULTS" 4 +.IX Item "TEST RESULTS" +.PD +ok, actual_ok, name, type, reason, diag, depth +.IP "SPACES AND TABS" 4 +.IX Item "SPACES AND TABS" +.PD 0 +.IP COLOUR 4 +.IX Item "COLOUR" +.IP "EXPORTED FUNCTIONS" 4 +.IX Item "EXPORTED FUNCTIONS" +.IP "HOW IT WORKS" 4 +.IX Item "HOW IT WORKS" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Test::Tester::Capture \- Help testing test modules built with Test::Builder" +.IX Subsection "Test::Tester::Capture - Help testing test modules built with Test::Builder" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Test::Tester::CaptureRunner \- Help testing test modules built with Test::Builder" +.IX Subsection "Test::Tester::CaptureRunner - Help testing test modules built with Test::Builder" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Test::Tutorial \- A tutorial about writing really basic tests" +.IX Subsection "Test::Tutorial - A tutorial about writing really basic tests" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.PD 0 +.IP "Nuts and bolts of testing." 4 +.IX Item "Nuts and bolts of testing." +.IP "Where to start?" 4 +.IX Item "Where to start?" +.IP Names 4 +.IX Item "Names" +.IP "Test the manual" 4 +.IX Item "Test the manual" +.IP "Sometimes the tests are wrong" 4 +.IX Item "Sometimes the tests are wrong" +.IP "Testing lots of values" 4 +.IX Item "Testing lots of values" +.IP "Informative names" 4 +.IX Item "Informative names" +.IP "Skipping tests" 4 +.IX Item "Skipping tests" +.IP "Todo tests" 4 +.IX Item "Todo tests" +.IP "Testing with taint mode." 4 +.IX Item "Testing with taint mode." +.RE +.RS 4 +.RE +.IP FOOTNOTES 4 +.IX Item "FOOTNOTES" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP MAINTAINERS 4 +.IX Item "MAINTAINERS" +.PD +Chad Granum <exodist@cpan.org> +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.SS "Test::use::ok \- Alternative to Test::More::use_ok" +.IX Subsection "Test::use::ok - Alternative to Test::More::use_ok" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.PD +Chad Granum <exodist@cpan.org> +.IP "CC0 1.0 Universal" 4 +.IX Item "CC0 1.0 Universal" +.SS "Text::Abbrev \- abbrev \- create an abbreviation table from a list" +.IX Subsection "Text::Abbrev - abbrev - create an abbreviation table from a list" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD +.SS "Text::Balanced \- Extract delimited text sequences from strings." +.IX Subsection "Text::Balanced - Extract delimited text sequences from strings." +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "General Behaviour in List Contexts" 4 +.IX Item "General Behaviour in List Contexts" +.PD +[0], [1], [2] +.IP "General Behaviour in Scalar and Void Contexts" 4 +.IX Item "General Behaviour in Scalar and Void Contexts" +.PD 0 +.IP "A Note About Prefixes" 4 +.IX Item "A Note About Prefixes" +.IP Functions 4 +.IX Item "Functions" +.PD +\&\f(CW\*(C`extract_delimited\*(C'\fR, \f(CW\*(C`extract_bracketed\*(C'\fR, \f(CW\*(C`extract_variable\*(C'\fR, [0], [1], +[2], \f(CW\*(C`extract_tagged\*(C'\fR, \f(CW\*(C`reject => $listref\*(C'\fR, \f(CWignore => +$listref\fR, \f(CW\*(C`fail => $str\*(C'\fR, [0], [1], [2], [3], [4], [5], +\&\f(CW\*(C`gen_extract_tagged\*(C'\fR, \f(CW\*(C`extract_quotelike\*(C'\fR, [0], [1], [2], [3], [4], [5], +[6], [7], [8], [9], [10], \f(CW\*(C`extract_quotelike\*(C'\fR, [0], [1], [2], [3], [4], +[5], [6], [7..10], \f(CW\*(C`extract_codeblock\*(C'\fR, \f(CW\*(C`extract_multiple\*(C'\fR, +\&\f(CW\*(C`gen_delimited_pat\*(C'\fR, \f(CW\*(C`delimited_pat\*(C'\fR +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.Vb 10 +\& C<Did not find a suitable bracket: "%s">, C<Did not find prefix: /%s/>, +\&C<Did not find opening bracket after prefix: "%s">, C<No quotelike +\&operator found after prefix: "%s">, C<Unmatched closing bracket: "%c">, +\&C<Unmatched opening bracket(s): "%s">, C<Unmatched embedded quote (%s)>, +\&C<Did not find closing delimiter to match \*(Aq%s\*(Aq>, C<Mismatched closing +\&bracket: expected "%c" but found "%s">, C<No block delimiter found after +\"elike "%s">, C<Did not find leading dereferencer>, C<Bad identifier +\&after dereferencer>, C<Did not find expected opening bracket at %s>, +\&C<Improperly nested codeblock at %s>, C<Missing second block for quotelike +\&"%s">, C<No match found for opening bracket>, C<Did not find opening tag: +\&/%s/>, C<Unable to construct closing tag to match: /%s/>, C<Found invalid +\&nested tag: %s>, C<Found unbalanced nested tag: %s>, C<Did not find closing +\&tag> +.Ve +.IP EXPORTS 4 +.IX Item "EXPORTS" +Default Exports, Optional Exports, Export Tags, \f(CW\*(C`:ALL\*(C'\fR +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.PD 0 +.IP FEEDBACK 4 +.IX Item "FEEDBACK" +.IP AVAILABILITY 4 +.IX Item "AVAILABILITY" +.IP INSTALLATION 4 +.IX Item "INSTALLATION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP COPYRIGHT 4 +.IX Item "COPYRIGHT" +.IP LICENCE 4 +.IX Item "LICENCE" +.IP VERSION 4 +.IX Item "VERSION" +.IP DATE 4 +.IX Item "DATE" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +.SS "Text::ParseWords \- parse text into an array of tokens or array of arrays" +.IX Subsection "Text::ParseWords - parse text into an array of tokens or array of arrays" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +true, false, \f(CW"delimiters"\fR +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +0, 1, 2, 3, 4, 5 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD 0 +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Text::Tabs \- expand and unexpand tabs like unix \fBexpand\fP\|(1) and \fBunexpand\fP\|(1)" +.IX Subsection "Text::Tabs - expand and unexpand tabs like unix expand and unexpand" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +expand, unexpand, \f(CW$tabstop\fR +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.PD 0 +.IP BUGS 4 +.IX Item "BUGS" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Text::Wrap \- line wrapping to form simple paragraphs" +.IX Subsection "Text::Wrap - line wrapping to form simple paragraphs" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP OVERRIDES 4 +.IX Item "OVERRIDES" +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Thread \- Manipulate threads in Perl (for old code only)" +.IX Subsection "Thread - Manipulate threads in Perl (for old code only)" +.IP DEPRECATED 4 +.IX Item "DEPRECATED" +.PD 0 +.IP HISTORY 4 +.IX Item "HISTORY" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.PD +\&\f(CW$thread\fR = Thread\->new(\e&start_sub), \f(CW$thread\fR = Thread\->new(\e&start_sub, +LIST), lock VARIABLE, async BLOCK;, Thread\->self, Thread\->list, cond_wait +VARIABLE, cond_signal VARIABLE, cond_broadcast VARIABLE, yield +.IP METHODS 4 +.IX Item "METHODS" +join, detach, equal, tid, done +.IP DEFUNCT 4 +.IX Item "DEFUNCT" +lock(\e&sub), eval, flags +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.SS "Thread::Queue \- Thread-safe queues" +.IX Subsection "Thread::Queue - Thread-safe queues" +.PD 0 +.IP VERSION 4 +.IX Item "VERSION" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +Ordinary scalars, Array refs, Hash refs, Scalar refs, Objects based on the +above +.IP "QUEUE CREATION" 4 +.IX Item "QUEUE CREATION" +\&\->\fBnew()\fR, \->new(LIST) +.IP "BASIC METHODS" 4 +.IX Item "BASIC METHODS" +\&\->enqueue(LIST), \->\fBdequeue()\fR, \->dequeue(COUNT), \->\fBdequeue_nb()\fR, +\&\->dequeue_nb(COUNT), \->dequeue_timed(TIMEOUT), \->dequeue_timed(TIMEOUT, +COUNT), \->\fBpending()\fR, \->limit, \->\fBend()\fR +.IP "ADVANCED METHODS" 4 +.IX Item "ADVANCED METHODS" +\&\->\fBpeek()\fR, \->peek(INDEX), \->insert(INDEX, LIST), \->\fBextract()\fR, +\&\->extract(INDEX), \->extract(INDEX, COUNT) +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Thread::Semaphore \- Thread-safe semaphores" +.IX Subsection "Thread::Semaphore - Thread-safe semaphores" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.PD +\&\->\fBnew()\fR, \->new(NUMBER), \->\fBdown()\fR, \->down(NUMBER), \->\fBdown_nb()\fR, +\&\->down_nb(NUMBER), \->\fBdown_force()\fR, \->down_force(NUMBER), +\&\->down_timed(TIMEOUT), \->down_timed(TIMEOUT, NUMBER), \->\fBup()\fR, \->up(NUMBER) +.IP NOTES 4 +.IX Item "NOTES" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP MAINTAINER 4 +.IX Item "MAINTAINER" +.IP LICENSE 4 +.IX Item "LICENSE" +.PD +.SS "Tie::Array \- base class for tied arrays" +.IX Subsection "Tie::Array - base class for tied arrays" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +TIEARRAY classname, LIST, STORE this, index, value, FETCH this, index, +FETCHSIZE this, STORESIZE this, count, EXTEND this, count, EXISTS this, +key, DELETE this, key, CLEAR this, DESTROY this, PUSH this, LIST, POP this, +SHIFT this, UNSHIFT this, LIST, SPLICE this, offset, length, LIST +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Tie::File \- Access the lines of a disk file via a Perl array" +.IX Subsection "Tie::File - Access the lines of a disk file via a Perl array" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP """recsep""" 4 +.el .IP \f(CWrecsep\fR 4 +.IX Item "recsep" +.ie n .IP """autochomp""" 4 +.el .IP \f(CWautochomp\fR 4 +.IX Item "autochomp" +.ie n .IP """mode""" 4 +.el .IP \f(CWmode\fR 4 +.IX Item "mode" +.ie n .IP """memory""" 4 +.el .IP \f(CWmemory\fR 4 +.IX Item "memory" +.ie n .IP """dw_size""" 4 +.el .IP \f(CWdw_size\fR 4 +.IX Item "dw_size" +.IP "Option Format" 4 +.IX Item "Option Format" +.RE +.RS 4 +.RE +.IP "Public Methods" 4 +.IX Item "Public Methods" +.RS 4 +.ie n .IP """flock""" 4 +.el .IP \f(CWflock\fR 4 +.IX Item "flock" +.ie n .IP """autochomp""" 4 +.el .IP \f(CWautochomp\fR 4 +.IX Item "autochomp" +.ie n .IP """defer"", ""flush"", ""discard"", and ""autodefer""" 4 +.el .IP "\f(CWdefer\fR, \f(CWflush\fR, \f(CWdiscard\fR, and \f(CWautodefer\fR" 4 +.IX Item "defer, flush, discard, and autodefer" +.ie n .IP """offset""" 4 +.el .IP \f(CWoffset\fR 4 +.IX Item "offset" +.RE +.RS 4 +.RE +.IP "Tying to an already-opened filehandle" 4 +.IX Item "Tying to an already-opened filehandle" +.IP "Deferred Writing" 4 +.IX Item "Deferred Writing" +.RS 4 +.IP Autodeferring 4 +.IX Item "Autodeferring" +.RE +.RS 4 +.RE +.IP "CONCURRENT ACCESS TO FILES" 4 +.IX Item "CONCURRENT ACCESS TO FILES" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP SUBCLASSING 4 +.IX Item "SUBCLASSING" +.ie n .IP "WHAT ABOUT ""DB_File""?" 4 +.el .IP "WHAT ABOUT \f(CWDB_File\fR?" 4 +.IX Item "WHAT ABOUT DB_File?" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP LICENSE 4 +.IX Item "LICENSE" +.IP WARRANTY 4 +.IX Item "WARRANTY" +.IP THANKS 4 +.IX Item "THANKS" +.IP TODO 4 +.IX Item "TODO" +.PD +.SS "Tie::Handle \- base class definitions for tied handles" +.IX Subsection "Tie::Handle - base class definitions for tied handles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +TIEHANDLE classname, LIST, WRITE this, scalar, length, offset, PRINT this, +LIST, PRINTF this, format, LIST, READ this, scalar, length, offset, +READLINE this, GETC this, CLOSE this, OPEN this, filename, BINMODE this, +EOF this, TELL this, SEEK this, offset, whence, DESTROY this +.IP "MORE INFORMATION" 4 +.IX Item "MORE INFORMATION" +.PD 0 +.IP COMPATIBILITY 4 +.IX Item "COMPATIBILITY" +.PD +.SS "Tie::Hash, Tie::StdHash, Tie::ExtraHash \- base class definitions for tied hashes" +.IX Subsection "Tie::Hash, Tie::StdHash, Tie::ExtraHash - base class definitions for tied hashes" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +TIEHASH classname, LIST, STORE this, key, value, FETCH this, key, FIRSTKEY +this, NEXTKEY this, lastkey, EXISTS this, key, DELETE this, key, CLEAR +this, SCALAR this +.IP "Inheriting from \fBTie::StdHash\fR" 4 +.IX Item "Inheriting from Tie::StdHash" +.PD 0 +.IP "Inheriting from \fBTie::ExtraHash\fR" 4 +.IX Item "Inheriting from Tie::ExtraHash" +.ie n .IP """SCALAR"", ""UNTIE"" and ""DESTROY""" 4 +.el .IP "\f(CWSCALAR\fR, \f(CWUNTIE\fR and \f(CWDESTROY\fR" 4 +.IX Item "SCALAR, UNTIE and DESTROY" +.IP "MORE INFORMATION" 4 +.IX Item "MORE INFORMATION" +.PD +.SS "Tie::Hash::NamedCapture \- Named regexp capture buffers" +.IX Subsection "Tie::Hash::NamedCapture - Named regexp capture buffers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +.SS "Tie::Memoize \- add data to hash when needed" +.IX Subsection "Tie::Memoize - add data to hash when needed" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "Inheriting from \fBTie::Memoize\fR" 4 +.IX Item "Inheriting from Tie::Memoize" +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.IP BUGS 4 +.IX Item "BUGS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Tie::RefHash \- Use references as hash keys" +.IX Subsection "Tie::RefHash - Use references as hash keys" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP EXAMPLE 4 +.IX Item "EXAMPLE" +.IP "THREAD SUPPORT" 4 +.IX Item "THREAD SUPPORT" +.IP "STORABLE SUPPORT" 4 +.IX Item "STORABLE SUPPORT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP SUPPORT 4 +.IX Item "SUPPORT" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENCE" 4 +.IX Item "COPYRIGHT AND LICENCE" +.PD +.SS "Tie::Scalar, Tie::StdScalar \- base class definitions for tied scalars" +.IX Subsection "Tie::Scalar, Tie::StdScalar - base class definitions for tied scalars" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this +.RS 4 +.IP "Tie::Scalar vs Tie::StdScalar" 4 +.IX Item "Tie::Scalar vs Tie::StdScalar" +.RE +.RS 4 +.RE +.PD 0 +.IP "MORE INFORMATION" 4 +.IX Item "MORE INFORMATION" +.PD +.SS "Tie::StdHandle \- base class definitions for tied handles" +.IX Subsection "Tie::StdHandle - base class definitions for tied handles" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +.SS "Tie::SubstrHash \- Fixed-table-size, fixed-key-length hashing" +.IX Subsection "Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +.SS "Time::HiRes \- High resolution alarm, sleep, gettimeofday, interval timers" +.IX Subsection "Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +gettimeofday (), usleep ( \f(CW$useconds\fR ), nanosleep ( \f(CW$nanoseconds\fR ), ualarm ( +\&\f(CW$useconds\fR [, \f(CW$interval_useconds\fR ] ), tv_interval, time (), sleep ( +\&\f(CW$floating_seconds\fR ), alarm ( \f(CW$floating_seconds\fR [, +\&\f(CW$interval_floating_seconds\fR ] ), setitimer ( \f(CW$which\fR, \f(CW$floating_seconds\fR [, +\&\f(CW$interval_floating_seconds\fR ] ), getitimer ( \f(CW$which\fR ), clock_gettime ( +\&\f(CW$which\fR ), clock_getres ( \f(CW$which\fR ), clock_nanosleep ( \f(CW$which\fR, \f(CW$nanoseconds\fR, +\&\f(CW$flags\fR = 0), \fBclock()\fR, stat, stat FH, stat EXPR, lstat, lstat FH, lstat +EXPR, utime LIST +.IP EXAMPLES 4 +.IX Item "EXAMPLES" +.PD 0 +.IP "C API" 4 +.IX Item "C API" +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.RS 4 +.IP "useconds or interval more than ..." 4 +.IX Item "useconds or interval more than ..." +.IP "negative time not invented yet" 4 +.IX Item "negative time not invented yet" +.IP "internal error: useconds < 0 (unsigned ... signed ...)" 4 +.IX Item "internal error: useconds < 0 (unsigned ... signed ...)" +.IP "useconds or uinterval equal to or more than 1000000" 4 +.IX Item "useconds or uinterval equal to or more than 1000000" +.IP "unimplemented in this platform" 4 +.IX Item "unimplemented in this platform" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Time::Local \- Efficiently compute time from local and GMT time" +.IX Subsection "Time::Local - Efficiently compute time from local and GMT time" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP FUNCTIONS 4 +.IX Item "FUNCTIONS" +.RS 4 +.ie n .IP "timelocal_posix() and timegm_posix()" 4 +.el .IP "\f(CWtimelocal_posix()\fR and \f(CWtimegm_posix()\fR" 4 +.IX Item "timelocal_posix() and timegm_posix()" +.ie n .IP "timelocal_modern() and timegm_modern()" 4 +.el .IP "\f(CWtimelocal_modern()\fR and \f(CWtimegm_modern()\fR" 4 +.IX Item "timelocal_modern() and timegm_modern()" +.ie n .IP "timelocal() and timegm()" 4 +.el .IP "\f(CWtimelocal()\fR and \f(CWtimegm()\fR" 4 +.IX Item "timelocal() and timegm()" +.ie n .IP "timelocal_nocheck() and timegm_nocheck()" 4 +.el .IP "\f(CWtimelocal_nocheck()\fR and \f(CWtimegm_nocheck()\fR" 4 +.IX Item "timelocal_nocheck() and timegm_nocheck()" +.IP "Year Value Interpretation" 4 +.IX Item "Year Value Interpretation" +.IP "Limits of time_t" 4 +.IX Item "Limits of time_t" +.IP "Ambiguous Local Times (DST)" 4 +.IX Item "Ambiguous Local Times (DST)" +.IP "Non-Existent Local Times (DST)" 4 +.IX Item "Non-Existent Local Times (DST)" +.IP "Negative Epoch Values" 4 +.IX Item "Negative Epoch Values" +.RE +.RS 4 +.RE +.IP IMPLEMENTATION 4 +.IX Item "IMPLEMENTATION" +.IP "AUTHORS EMERITUS" 4 +.IX Item "AUTHORS EMERITUS" +.IP BUGS 4 +.IX Item "BUGS" +.IP SOURCE 4 +.IX Item "SOURCE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP CONTRIBUTORS 4 +.IX Item "CONTRIBUTORS" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.PD +.SS "Time::Piece \- Object Oriented time objects" +.IX Subsection "Time::Piece - Object Oriented time objects" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP USAGE 4 +.IX Item "USAGE" +.RS 4 +.IP "Local Locales" 4 +.IX Item "Local Locales" +.IP "Date Calculations" 4 +.IX Item "Date Calculations" +.IP Truncation 4 +.IX Item "Truncation" +.IP "Date Comparisons" 4 +.IX Item "Date Comparisons" +.IP "Date Parsing" 4 +.IX Item "Date Parsing" +.IP YYYY\-MM\-DDThh:mm:ss 4 +.IX Item "YYYY-MM-DDThh:mm:ss" +.IP "Week Number" 4 +.IX Item "Week Number" +.IP "Global Overriding" 4 +.IX Item "Global Overriding" +.RE +.RS 4 +.RE +.IP CAVEATS 4 +.IX Item "CAVEATS" +.RS 4 +.ie n .IP "Setting $ENV{TZ} in Threads on Win32" 4 +.el .IP "Setting \f(CW$ENV\fR{TZ} in Threads on Win32" 4 +.IX Item "Setting $ENV{TZ} in Threads on Win32" +.IP "Use of epoch seconds" 4 +.IX Item "Use of epoch seconds" +.RE +.RS 4 +.RE +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP BUGS 4 +.IX Item "BUGS" +.PD +.SS "Time::Seconds \- a simple API to convert seconds to other date values" +.IX Subsection "Time::Seconds - a simple API to convert seconds to other date values" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP METHODS 4 +.IX Item "METHODS" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "COPYRIGHT AND LICENSE" 4 +.IX Item "COPYRIGHT AND LICENSE" +.IP Bugs 4 +.IX Item "Bugs" +.PD +.SS "Time::gmtime \- by-name interface to Perl's built-in \fBgmtime()\fP function" +.IX Subsection "Time::gmtime - by-name interface to Perl's built-in gmtime() function" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Time::localtime \- by-name interface to Perl's built-in \fBlocaltime()\fP function" +.IX Subsection "Time::localtime - by-name interface to Perl's built-in localtime() function" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "Time::tm \- internal object used by Time::gmtime and Time::localtime" +.IX Subsection "Time::tm - internal object used by Time::gmtime and Time::localtime" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "UNIVERSAL \- base class for ALL classes (blessed references)" +.IX Subsection "UNIVERSAL - base class for ALL classes (blessed references)" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.PD +\&\f(CW\*(C`$obj\->isa( TYPE )\*(C'\fR, \f(CW\*(C`CLASS\->isa( TYPE )\*(C'\fR, \f(CW\*(C`eval { VAL\->isa( +TYPE ) }\*(C'\fR, \f(CW\*(C`TYPE\*(C'\fR, \f(CW$obj\fR, \f(CW\*(C`CLASS\*(C'\fR, \f(CW\*(C`VAL\*(C'\fR, \f(CW\*(C`$obj\->DOES( ROLE )\*(C'\fR, +\&\f(CW\*(C`CLASS\->DOES( ROLE )\*(C'\fR, \f(CW\*(C`$obj\->can( METHOD )\*(C'\fR, \f(CW\*(C`CLASS\->can( +METHOD )\*(C'\fR, \f(CW\*(C`eval { VAL\->can( METHOD ) }\*(C'\fR, \f(CW\*(C`VERSION ( [ REQUIRE ] )\*(C'\fR +.IP WARNINGS 4 +.IX Item "WARNINGS" +.PD 0 +.IP EXPORTS 4 +.IX Item "EXPORTS" +.PD +.SS "Unicode::Collate \- Unicode Collation Algorithm" +.IX Subsection "Unicode::Collate - Unicode Collation Algorithm" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Constructor and Tailoring" 4 +.IX Item "Constructor and Tailoring" +.PD +UCA_Version, alternate, backwards, entry, hangul_terminator, highestFFFF, +identical, ignoreChar, ignoreName, ignore_level2, katakana_before_hiragana, +level, long_contraction, minimalFFFE, normalization, overrideCJK, +overrideHangul, overrideOut, preprocess, rearrange, rewrite, suppress, +table, undefChar, undefName, upper_before_lower, variable +.IP "Methods for Collation" 4 +.IX Item "Methods for Collation" +\&\f(CW\*(C`@sorted = $Collator\->sort(@not_sorted)\*(C'\fR, \f(CW\*(C`$result = +$Collator\->cmp($a, $b)\*(C'\fR, \f(CW\*(C`$result = $Collator\->eq($a, $b)\*(C'\fR, +\&\f(CW\*(C`$result = $Collator\->ne($a, $b)\*(C'\fR, \f(CW\*(C`$result = $Collator\->lt($a, +$b)\*(C'\fR, \f(CW\*(C`$result = $Collator\->le($a, $b)\*(C'\fR, \f(CW\*(C`$result = +$Collator\->gt($a, $b)\*(C'\fR, \f(CW\*(C`$result = $Collator\->ge($a, $b)\*(C'\fR, +\&\f(CW\*(C`$sortKey = $Collator\->getSortKey($string)\*(C'\fR, \f(CW\*(C`$sortKeyForm = +$Collator\->viewSortKey($string)\*(C'\fR +.IP "Methods for Searching" 4 +.IX Item "Methods for Searching" +\&\f(CW\*(C`$position = $Collator\->index($string, $substring[, $position])\*(C'\fR, +\&\f(CW\*(C`($position, $length) = $Collator\->index($string, $substring[, +$position])\*(C'\fR, \f(CW\*(C`$match_ref = $Collator\->match($string, $substring)\*(C'\fR, +\&\f(CW\*(C`($match) = $Collator\->match($string, $substring)\*(C'\fR, \f(CW\*(C`@match = +$Collator\->gmatch($string, $substring)\*(C'\fR, \f(CW\*(C`$count = +$Collator\->subst($string, $substring, $replacement)\*(C'\fR, \f(CW\*(C`$count = +$Collator\->gsubst($string, $substring, $replacement)\*(C'\fR +.IP "Other Methods" 4 +.IX Item "Other Methods" +\&\f(CW\*(C`%old_tailoring = $Collator\->change(%new_tailoring)\*(C'\fR, +\&\f(CW\*(C`$modified_collator = $Collator\->change(%new_tailoring)\*(C'\fR, \f(CW\*(C`$version = +$Collator\->version()\*(C'\fR, \f(CWUCA_Version()\fR, \f(CWBase_Unicode_Version()\fR +.RE +.RS 4 +.RE +.IP EXPORT 4 +.IX Item "EXPORT" +.PD 0 +.IP INSTALL 4 +.IX Item "INSTALL" +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +Normalization, Conformance Test +.IP "AUTHOR, COPYRIGHT AND LICENSE" 4 +.IX Item "AUTHOR, COPYRIGHT AND LICENSE" +.PD 0 +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +Unicode Collation Algorithm \- UTS #10, The Default Unicode Collation +Element Table (DUCET), The conformance test for the UCA, Hangul Syllable +Type, Unicode Normalization Forms \- UAX #15, Unicode Locale Data Markup +Language (LDML) \- UTS #35 +.SS "Unicode::Collate::CJK::Big5 \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::Big5 - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::GB2312 \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::GB2312 - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::JISX0208 \- weighting JIS KANJI for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::JISX0208 - weighting JIS KANJI for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::Korean \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::Korean - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::Pinyin \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::Pinyin - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::Stroke \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::Stroke - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::CJK::Zhuyin \- weighting CJK Unified Ideographs for Unicode::Collate" +.IX Subsection "Unicode::Collate::CJK::Zhuyin - weighting CJK Unified Ideographs for Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +CLDR \- Unicode Common Locale Data Repository, Unicode Locale Data Markup +Language (LDML) \- UTS #35, Unicode::Collate, Unicode::Collate::Locale +.SS "Unicode::Collate::Locale \- Linguistic tailoring for DUCET via Unicode::Collate" +.IX Subsection "Unicode::Collate::Locale - Linguistic tailoring for DUCET via Unicode::Collate" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP Constructor 4 +.IX Item "Constructor" +.IP Methods 4 +.IX Item "Methods" +.PD +\&\f(CW\*(C`$Collator\->getlocale\*(C'\fR, \f(CW\*(C`$Collator\->locale_version\*(C'\fR +.IP "A list of tailorable locales" 4 +.IX Item "A list of tailorable locales" +.PD 0 +.IP "A list of variant codes and their aliases" 4 +.IX Item "A list of variant codes and their aliases" +.RE +.RS 4 +.RE +.IP INSTALL 4 +.IX Item "INSTALL" +.IP CAVEAT 4 +.IX Item "CAVEAT" +.PD +Tailoring is not maximum, Collation reordering is not supported +.RS 4 +.IP Reference 4 +.IX Item "Reference" +.RE +.RS 4 +.RE +.PD 0 +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +Unicode Collation Algorithm \- UTS #10, The Default Unicode Collation +Element Table (DUCET), Unicode Locale Data Markup Language (LDML) \- UTS +#35, CLDR \- Unicode Common Locale Data Repository, Unicode::Collate, +Unicode::Normalize +.SS "Unicode::Normalize \- Unicode Normalization Forms" +.IX Subsection "Unicode::Normalize - Unicode Normalization Forms" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "Normalization Forms" 4 +.IX Item "Normalization Forms" +.PD +\&\f(CW\*(C`$NFD_string = NFD($string)\*(C'\fR, \f(CW\*(C`$NFC_string = NFC($string)\*(C'\fR, +\&\f(CW\*(C`$NFKD_string = NFKD($string)\*(C'\fR, \f(CW\*(C`$NFKC_string = NFKC($string)\*(C'\fR, +\&\f(CW\*(C`$FCD_string = FCD($string)\*(C'\fR, \f(CW\*(C`$FCC_string = FCC($string)\*(C'\fR, +\&\f(CW\*(C`$normalized_string = normalize($form_name, $string)\*(C'\fR +.IP "Decomposition and Composition" 4 +.IX Item "Decomposition and Composition" +\&\f(CW\*(C`$decomposed_string = decompose($string [, $useCompatMapping])\*(C'\fR, +\&\f(CW\*(C`$reordered_string = reorder($string)\*(C'\fR, \f(CW$composed_string = +compose($string)\fR, \f(CW($processed, $unprocessed) = +splitOnLastStarter($normalized)\fR, \f(CW\*(C`$processed = normalize_partial($form, +$unprocessed)\*(C'\fR, \f(CW\*(C`$processed = NFD_partial($unprocessed)\*(C'\fR, \f(CW$processed = +NFC_partial($unprocessed)\fR, \f(CW\*(C`$processed = NFKD_partial($unprocessed)\*(C'\fR, +\&\f(CW\*(C`$processed = NFKC_partial($unprocessed)\*(C'\fR +.IP "Quick Check" 4 +.IX Item "Quick Check" +\&\f(CW\*(C`$result = checkNFD($string)\*(C'\fR, \f(CW\*(C`$result = checkNFC($string)\*(C'\fR, \f(CW$result = +checkNFKD($string)\fR, \f(CW\*(C`$result = checkNFKC($string)\*(C'\fR, \f(CW$result = +checkFCD($string)\fR, \f(CW\*(C`$result = checkFCC($string)\*(C'\fR, \f(CW\*(C`$result = +check($form_name, $string)\*(C'\fR +.IP "Character Data" 4 +.IX Item "Character Data" +\&\f(CW\*(C`$canonical_decomposition = getCanon($code_point)\*(C'\fR, +\&\f(CW\*(C`$compatibility_decomposition = getCompat($code_point)\*(C'\fR, +\&\f(CW\*(C`$code_point_composite = getComposite($code_point_here, +$code_point_next)\*(C'\fR, \f(CW\*(C`$combining_class = getCombinClass($code_point)\*(C'\fR, +\&\f(CW\*(C`$may_be_composed_with_prev_char = isComp2nd($code_point)\*(C'\fR, +\&\f(CW\*(C`$is_exclusion = isExclusion($code_point)\*(C'\fR, \f(CW$is_singleton = +isSingleton($code_point)\fR, \f(CW$is_non_starter_decomposition = +isNonStDecomp($code_point)\fR, \f(CW$is_Full_Composition_Exclusion = +isComp_Ex($code_point)\fR, \f(CW\*(C`$NFD_is_NO = isNFD_NO($code_point)\*(C'\fR, +\&\f(CW\*(C`$NFC_is_NO = isNFC_NO($code_point)\*(C'\fR, \f(CW$NFC_is_MAYBE = +isNFC_MAYBE($code_point)\fR, \f(CW\*(C`$NFKD_is_NO = isNFKD_NO($code_point)\*(C'\fR, +\&\f(CW\*(C`$NFKC_is_NO = isNFKC_NO($code_point)\*(C'\fR, \f(CW$NFKC_is_MAYBE = +isNFKC_MAYBE($code_point)\fR +.RE +.RS 4 +.RE +.IP EXPORT 4 +.IX Item "EXPORT" +.PD 0 +.IP CAVEATS 4 +.IX Item "CAVEATS" +.PD +Perl's version vs. Unicode version, Correction of decomposition mapping, +Revised definition of canonical composition +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD 0 +.IP LICENSE 4 +.IX Item "LICENSE" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.PD +<http://www.unicode.org/reports/tr15/>, +<http://www.unicode.org/Public/UNIDATA/CompositionExclusions.txt>, +<http://www.unicode.org/Public/UNIDATA/DerivedNormalizationProps.txt>, +<http://www.unicode.org/Public/UNIDATA/NormalizationCorrections.txt>, +<http://www.unicode.org/review/pr\-29.html>, +<http://www.unicode.org/notes/tn5/> +.SS "Unicode::UCD \- Unicode character database" +.IX Subsection "Unicode::UCD - Unicode character database" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "code point argument" 4 +.IX Item "code point argument" +.RE +.RS 4 +.RE +.IP \fBcharinfo()\fR 4 +.IX Item "charinfo()" +.PD +\&\fBcode\fR, \fBname\fR, \fBcategory\fR, \fBcombining\fR, \fBbidi\fR, \fBdecomposition\fR, +\&\fBdecimal\fR, \fBdigit\fR, \fBnumeric\fR, \fBmirrored\fR, \fBunicode10\fR, \fBcomment\fR, +\&\fBupper\fR, \fBlower\fR, \fBtitle\fR, \fBblock\fR, \fBscript\fR +.IP \fBcharprop()\fR 4 +.IX Item "charprop()" +Block, Decomposition_Mapping, Name_Alias, Numeric_Value, Script_Extensions +.IP \fBcharprops_all()\fR 4 +.IX Item "charprops_all()" +.PD 0 +.IP \fBcharblock()\fR 4 +.IX Item "charblock()" +.IP \fBcharscript()\fR 4 +.IX Item "charscript()" +.IP \fBcharblocks()\fR 4 +.IX Item "charblocks()" +.IP \fBcharscripts()\fR 4 +.IX Item "charscripts()" +.IP \fBcharinrange()\fR 4 +.IX Item "charinrange()" +.IP \fBgeneral_categories()\fR 4 +.IX Item "general_categories()" +.IP \fBbidi_types()\fR 4 +.IX Item "bidi_types()" +.IP \fBcompexcl()\fR 4 +.IX Item "compexcl()" +.IP \fBcasefold()\fR 4 +.IX Item "casefold()" +.PD +\&\fBcode\fR, \fBfull\fR, \fBsimple\fR, \fBmapping\fR, \fBstatus\fR, \fB*\fR If you use this +\&\f(CW\*(C`I\*(C'\fR mapping, \fB*\fR If you exclude this \f(CW\*(C`I\*(C'\fR mapping, \fBturkic\fR +.IP \fBall_casefolds()\fR 4 +.IX Item "all_casefolds()" +.PD 0 +.IP \fBcasespec()\fR 4 +.IX Item "casespec()" +.PD +\&\fBcode\fR, \fBlower\fR, \fBtitle\fR, \fBupper\fR, \fBcondition\fR +.IP \fBnamedseq()\fR 4 +.IX Item "namedseq()" +.PD 0 +.IP \fBnum()\fR 4 +.IX Item "num()" +.IP \fBprop_aliases()\fR 4 +.IX Item "prop_aliases()" +.IP \fBprop_values()\fR 4 +.IX Item "prop_values()" +.IP \fBprop_value_aliases()\fR 4 +.IX Item "prop_value_aliases()" +.IP \fBprop_invlist()\fR 4 +.IX Item "prop_invlist()" +.IP \fBprop_invmap()\fR 4 +.IX Item "prop_invmap()" +.PD +\&\fR\f(CB\*(C`s\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`sl\*(C'\fR\fB\fR, \f(CW\*(C`correction\*(C'\fR, \f(CW\*(C`control\*(C'\fR, \f(CW\*(C`alternate\*(C'\fR, \f(CW\*(C`figment\*(C'\fR, +\&\f(CW\*(C`abbreviation\*(C'\fR, \fB\fR\f(CB\*(C`a\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`al\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`ae\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`ale\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`ar\*(C'\fR\fB\fR, \fB\fR\f(CB\*(C`n\*(C'\fR\fB\fR, +\&\fB\fR\f(CB\*(C`ad\*(C'\fR\fB\fR +.IP \fBsearch_invlist()\fR 4 +.IX Item "search_invlist()" +.PD 0 +.IP Unicode::UCD::UnicodeVersion 4 +.IX Item "Unicode::UCD::UnicodeVersion" +.IP "\fBBlocks versus Scripts\fR" 4 +.IX Item "Blocks versus Scripts" +.IP "\fBMatching Scripts and Blocks\fR" 4 +.IX Item "Matching Scripts and Blocks" +.IP "Old-style versus new-style block names" 4 +.IX Item "Old-style versus new-style block names" +.IP "Use with older Unicode versions" 4 +.IX Item "Use with older Unicode versions" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "User::grent \- by-name interface to Perl's built-in getgr*() functions" +.IX Subsection "User::grent - by-name interface to Perl's built-in getgr*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.PD +.SS "User::pwent \- by-name interface to Perl's built-in getpw*() functions" +.IX Subsection "User::pwent - by-name interface to Perl's built-in getpw*() functions" +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.PD 0 +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.IP "System Specifics" 4 +.IX Item "System Specifics" +.RE +.RS 4 +.RE +.IP NOTE 4 +.IX Item "NOTE" +.IP AUTHOR 4 +.IX Item "AUTHOR" +.IP HISTORY 4 +.IX Item "HISTORY" +.PD +March 18th, 2000 +.SS "XSLoader \- Dynamically load C libraries into Perl code" +.IX Subsection "XSLoader - Dynamically load C libraries into Perl code" +.IP VERSION 4 +.IX Item "VERSION" +.PD 0 +.IP SYNOPSIS 4 +.IX Item "SYNOPSIS" +.IP DESCRIPTION 4 +.IX Item "DESCRIPTION" +.RS 4 +.ie n .IP "Migration from ""DynaLoader""" 4 +.el .IP "Migration from \f(CWDynaLoader\fR" 4 +.IX Item "Migration from DynaLoader" +.IP "Backward compatible boilerplate" 4 +.IX Item "Backward compatible boilerplate" +.RE +.RS 4 +.RE +.IP "Order of initialization: early \fBload()\fR" 4 +.IX Item "Order of initialization: early load()" +.RS 4 +.IP "The most hairy case" 4 +.IX Item "The most hairy case" +.RE +.RS 4 +.RE +.IP DIAGNOSTICS 4 +.IX Item "DIAGNOSTICS" +.PD +\&\f(CW\*(C`Can\*(Aqt find \*(Aq%s\*(Aq symbol in %s\*(C'\fR, \f(CW\*(C`Can\*(Aqt load \*(Aq%s\*(Aq for module %s: %s\*(C'\fR, +\&\f(CW\*(C`Undefined symbols present after loading %s: %s\*(C'\fR +.IP LIMITATIONS 4 +.IX Item "LIMITATIONS" +.PD 0 +.IP "KNOWN BUGS" 4 +.IX Item "KNOWN BUGS" +.IP BUGS 4 +.IX Item "BUGS" +.IP "SEE ALSO" 4 +.IX Item "SEE ALSO" +.IP AUTHORS 4 +.IX Item "AUTHORS" +.IP "COPYRIGHT & LICENSE" 4 +.IX Item "COPYRIGHT & LICENSE" +.PD +.SH "AUXILIARY DOCUMENTATION" +.IX Header "AUXILIARY DOCUMENTATION" +Here should be listed all the extra programs' documentation, but they +don't all have manual pages yet: +.IP h2ph 4 +.IX Item "h2ph" +.PD 0 +.IP h2xs 4 +.IX Item "h2xs" +.IP perlbug 4 +.IX Item "perlbug" +.IP pl2pm 4 +.IX Item "pl2pm" +.IP pod2html 4 +.IX Item "pod2html" +.IP pod2man 4 +.IX Item "pod2man" +.IP splain 4 +.IX Item "splain" +.IP xsubpp 4 +.IX Item "xsubpp" +.PD +.SH AUTHOR +.IX Header "AUTHOR" +Larry Wall <\fIlarry@wall.org\fR>, with the help of oodles +of other folks. |