perltoc - Man Page
perl documentation table of contents
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.
Basic Documentation
perl - The Perl 5 language interpreter
- SYNOPSIS
- GETTING HELP
Overview
Tutorials
Reference Manual
Internals and C Language Interface
History
Miscellaneous
Language-Specific
Platform-Specific
Stubs for Deleted Documents
- DESCRIPTION
- AVAILABILITY
- ENVIRONMENT
- AUTHOR
- FILES
- SEE ALSO
<https://www.perl.org/>, <https://www.perl.com/>, <https://www.cpan.org/>, <https://www.pm.org/>
DIAGNOSTICS
BUGS
NOTES
perlintro - a brief introduction and overview of Perl
- DESCRIPTION
- What is Perl?
- Running Perl programs
- Safety net
- Basic syntax overview
- Perl variable types
Scalars, Arrays, Hashes
- Variable scoping
- Conditional and looping constructs
if, while, for, foreach
- Builtin operators and functions
Arithmetic, Numeric comparison, String comparison, Boolean logic, Miscellaneous
- Files and I/O
- Regular expressions
Simple matching, Simple substitution, More complex regular expressions, Parentheses for capturing, Other regexp features
Writing subroutines
OO Perl
Using Perl modules
AUTHOR
perlrun - how to execute the Perl interpreter
- SYNOPSIS
- DESCRIPTION
- #! and quoting on non-Unix systems
OS/2, MS-DOS, Win95/NT, VMS
- Location of Perl
- Command Switches
-0[octal/hexadecimal] , -a , -C [number/list] , -c , -d , -dt, -d:MOD[=bar,baz] , -dt:MOD[=bar,baz], -Dletters , -Dnumber, -e commandline , -E commandline , -f
, -Fpattern , -g , -h , -? , -i[extension] , -Idirectory , -l[octnum] , -m[-]module , -M[-]module, -M[-]'module ...', -[mM][-]module=arg[,arg]..., -n , -p , -s , -S , -t , -T , -u , -U , -v , -V , -V:configvar, -w , -W , -X , -x , -xdirectory
- 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
- 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
perlreftut - Mark's very short tutorial about references
- DESCRIPTION
- Who Needs Complicated Data Structures?
- The Solution
- Syntax
Making References
Using References
An Example
Arrow Rule
- Solution
- The Rest
- Summary
- Credits
Distribution Conditions
perldsc - Perl Data Structures Cookbook
- DESCRIPTION
arrays of arrays, hashes of arrays, arrays of hashes, hashes of hashes, more elaborate constructs
- REFERENCES
- COMMON MISTAKES
- CAVEAT ON PRECEDENCE
- WHY YOU SHOULD ALWAYS use VERSION
- DEBUGGING
- CODE EXAMPLES
- ARRAYS OF ARRAYS
Declaration of an ARRAY OF ARRAYS
Generation of an ARRAY OF ARRAYS
Access and Printing of an ARRAY OF ARRAYS
- HASHES OF ARRAYS
Declaration of a HASH OF ARRAYS
Generation of a HASH OF ARRAYS
Access and Printing of a HASH OF ARRAYS
- ARRAYS OF HASHES
Declaration of an ARRAY OF HASHES
Generation of an ARRAY OF HASHES
Access and Printing of an ARRAY OF HASHES
- HASHES OF HASHES
Declaration of a HASH OF HASHES
Generation of a HASH OF HASHES
Access and Printing of a HASH OF HASHES
- MORE ELABORATE RECORDS
Declaration of MORE ELABORATE RECORDS
Declaration of a HASH OF COMPLEX RECORDS
Generation of a HASH OF COMPLEX RECORDS
Database Ties
SEE ALSO
AUTHOR
perllol - Manipulating Arrays of Arrays in Perl
- DESCRIPTION
Declaration and Access of Arrays of Arrays
Growing Your Own
Access and Printing
Slices
SEE ALSO
AUTHOR
perlrequick - Perl regular expressions quick start
- DESCRIPTION
- The Guide
Simple word matching
Using character classes
Matching this or that
Grouping things and hierarchical matching
Extracting matches
Matching repetitions
More matching
Search and replace
The split operator
use re 'strict'
- BUGS
- SEE ALSO
- AUTHOR AND COPYRIGHT
Acknowledgments
perlretut - Perl regular expressions tutorial
- DESCRIPTION
- Part 1: The basics
Simple word matching
Using character classes
Matching this or that
Grouping things and hierarchical matching
Extracting matches
Backreferences
Relative backreferences
Named backreferences
Alternative capture group numbering
Position information
Non-capturing groupings
Matching repetitions
Possessive quantifiers
Building a regexp
Using regular expressions in Perl
- Part 2: Power tools
More on characters, strings, and character classes
Compiling and saving regular expressions
Composing regular expressions at runtime
Embedding comments and modifiers in a regular expression
Looking ahead and looking behind
Using independent subexpressions to prevent backtracking
Conditional expressions
Defining named patterns
Recursive patterns
A bit of magic: executing Perl code in a regular expression
Backtracking control verbs
Pragmas and debugging
- SEE ALSO
- AUTHOR AND COPYRIGHT
Acknowledgments
perlootut - Object-Oriented Programming in Perl Tutorial
- DATE
- DESCRIPTION
- OBJECT-ORIENTED FUNDAMENTALS
Object
Class
Methods
Attributes
Polymorphism
Inheritance
Encapsulation
Composition
Roles
When to Use OO
- PERL OO SYSTEMS
- Moose
Declarative sugar, Roles built-in, A miniature type system, Full introspection and manipulation, Self-hosted and extensible, Rich ecosystem, Many more features
- Class::Accessor
- Class::Tiny
- Role::Tiny
- OO System Summary
Moose, Class::Accessor, Class::Tiny, Role::Tiny
Other OO Systems
CONCLUSION
perlperf - Perl Performance and Optimization Techniques
- DESCRIPTION
- OVERVIEW
ONE STEP SIDEWAYS
ONE STEP FORWARD
ANOTHER STEP SIDEWAYS
- GENERAL GUIDELINES
- BENCHMARKS
Assigning and Dereferencing Variables
Search and replace or tr
- PROFILING TOOLS
Devel::DProf
Devel::Profiler
Devel::SmallProf
Devel::FastProf
Devel::NYTProf
- SORTING
Elapsed Real Time, User CPU Time, System CPU Time
- LOGGING
Logging if DEBUG (constant)
- POSTSCRIPT
- SEE ALSO
PERLDOCS
MAN PAGES
MODULES
URLS
AUTHOR
perlstyle - Perl style guide
DESCRIPTION
perlcheat - Perl 5 Cheat Sheet
- DESCRIPTION
The sheet
ACKNOWLEDGEMENTS
AUTHOR
SEE ALSO
perltrap - Perl traps for the unwary
- DESCRIPTION
Awk Traps
C/C++ Traps
JavaScript Traps
Sed Traps
Shell Traps
Perl Traps
perldebtut - Perl debugging tutorial
DESCRIPTION
use strict
Looking at data and -w and v
help
Stepping through code
Placeholder for a, w, t, T
REGULAR EXPRESSIONS
OUTPUT TIPS
CGI
GUIs
SUMMARY
SEE ALSO
AUTHOR
CONTRIBUTORS
perlfaq - Frequently asked questions about Perl
- VERSION
- DESCRIPTION
Where to find the perlfaq
How to use the perlfaq
How to contribute to the perlfaq
What if my question isn't answered in the FAQ?
- TABLE OF CONTENTS
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
- THE QUESTIONS
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
CREDITS
AUTHOR AND COPYRIGHT
perlfaq1 - General Questions About Perl
- VERSION
- DESCRIPTION
- What is Perl?
- Who supports Perl? Who develops it? Why is it free?
- Which version of Perl should I use?
- What is Raku (Perl 6)?
- How stable is Perl?
- How often are new versions of Perl released?
- Is Perl difficult to learn?
- How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl?
- Can I do [task] in Perl?
- When shouldn't I program in Perl?
- What's the difference between "perl" and "Perl"?
- What is a JAPH?
- How can I convince others to use Perl?
<http://www.perl.org/about.html>, <http://perltraining.com.au/whyperl.html>
AUTHOR AND COPYRIGHT
perlfaq2 - Obtaining and Learning about Perl
- VERSION
- DESCRIPTION
- What machines support Perl? Where do I get it?
- How can I get a binary version of Perl?
- I don't have a C compiler. How can I build my own Perl interpreter?
- I copied the Perl binary from one machine to another, but scripts don't work.
- I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?
- What modules and extensions are available for Perl? What is CPAN?
- Where can I get information on Perl?
<http://www.perl.org/>, <http://perldoc.perl.org/>, <http://learn.perl.org/>
- 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/>
Where can I post questions?
Perl Books
Which magazines have Perl content?
Which Perl blogs should I read?
What mailing lists are there for Perl?
Where can I buy a commercial version of Perl?
Where do I send bug reports?
AUTHOR AND COPYRIGHT
perlfaq3 - Programming Tools
- VERSION
- DESCRIPTION
- How do I do (anything)?
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
- How can I use Perl interactively?
- How do I find which modules are installed on my system?
- How do I debug my Perl programs?
- How do I profile my Perl programs?
- How do I cross-reference my Perl programs?
- Is there a pretty-printer (formatter) for Perl?
- Is there an IDE or Windows Perl Editor?
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
- Where can I get Perl macros for vi?
- Where can I get perl-mode or cperl-mode for emacs?
- How can I use curses with Perl?
- How can I write a GUI (X, Tk, Gtk, etc.) in Perl?
Tk, Wx, Gtk and Gtk2, Win32::GUI, CamelBones, Qt, Athena
- How can I make my Perl program run faster?
- How can I make my Perl program take less memory?
Don't slurp!, Use map and grep selectively, Avoid unnecessary quotes and stringification, Pass by reference, Tie large variables to disk
Is it safe to return a reference to local or lexical data?
How can I free an array or hash so my program shrinks?
How can I make my CGI script more efficient?
How can I hide the source for my Perl program?
How can I compile my Perl program into byte code or C?
How can I get
#!perl
to work on [MS-DOS,NT,...]?Can I write useful Perl programs on the command line?
Why don't Perl one-liners work on my DOS/Mac/VMS system?
Where can I learn about CGI or Web programming in Perl?
Where can I learn about object-oriented Perl programming?
Where can I learn about linking C with Perl?
I've read perlembed, perlguts, etc., but I can't embed perl in my C program; what am I doing wrong?
When I tried to run my script, I got this message. What does it mean?
What's MakeMaker?
AUTHOR AND COPYRIGHT
perlfaq4 - Data Manipulation
- VERSION
- DESCRIPTION
- Data: Numbers
- Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?
- Why is int() broken?
- Why isn't my octal data interpreted correctly?
- Does Perl have a round() function? What about ceil() and floor()? Trig functions?
- How do I convert between numeric representations/bases/radixes?
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
Why doesn't & work the way I want it to?
How do I multiply matrices?
How do I perform an operation on a series of integers?
How can I output Roman numerals?
Why aren't my random numbers random?
How do I get a random number between X and Y?
- Data: Dates
How do I find the day or week of the year?
How do I find the current century or millennium?
How can I compare two dates and find the difference?
How can I take a string and turn it into epoch seconds?
How can I find the Julian Day?
How do I find yesterday's date?
Does Perl have a Year 2000 or 2038 problem? Is Perl Y2K compliant?
- Data: Strings
- How do I validate input?
- How do I unescape a string?
- How do I remove consecutive pairs of characters?
- How do I expand function calls in a string?
- How do I find matching/nesting anything?
- How do I reverse a string?
- How do I expand tabs in a string?
- How do I reformat a paragraph?
- How can I access or change N characters of a string?
- How do I change the Nth occurrence of something?
- How can I count the number of occurrences of a substring within a string?
- How do I capitalize all the words on one line?
- How can I split a [character]-delimited string except when inside [character]?
- How do I strip blank space from the beginning/end of a string?
- How do I pad a string with blanks or pad a number with zeroes?
- How do I extract selected columns from a string?
- How do I find the soundex value of a string?
- How can I expand variables in text strings?
- Does Perl have anything like Ruby's #{} or Python's f string?
- What's wrong with always quoting "$vars"?
- Why don't my <<HERE documents work?
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
- Data: Arrays
What is the difference between a list and an array?
What is the difference between
$array
[1] and@array
[1]?How can I remove duplicate elements from a list or array?
How can I tell whether a certain element is contained in a list or array?
How do I compute the difference of two arrays? How do I compute the intersection of two arrays?
How do I test whether two arrays or hashes are equal?
How do I find the first array element for which a condition is true?
How do I handle linked lists?
How do I handle circular lists?
How do I shuffle an array randomly?
How do I process/modify each element of an array?
How do I select a random element from an array?
How do I permute N elements of a list?
How do I sort an array by (anything)?
How do I manipulate arrays of bits?
Why does defined() return true on empty arrays and hashes?
- Data: Hashes (Associative Arrays)
How do I process an entire hash?
How do I merge two hashes?
What happens if I add or remove keys from a hash while iterating over it?
How do I look up a hash element by value?
How can I know how many entries are in a hash?
How do I sort a hash (optionally by value instead of key)?
How can I always keep my hash sorted?
What's the difference between "delete" and "undef" with hashes?
Why don't my tied hashes make the defined/exists distinction?
How do I reset an each() operation part-way through?
How can I get the unique keys from two hashes?
How can I store a multidimensional array in a DBM file?
How can I make my hash remember the order I put elements into it?
Why does passing a subroutine an undefined element in a hash create it?
How can I make the Perl equivalent of a C structure/C++ class/hash or array of hashes or arrays?
How can I use a reference as a hash key?
How can I check if a key exists in a multilevel hash?
How can I prevent addition of unwanted keys into a hash?
- Data: Misc
How do I handle binary data correctly?
How do I determine whether a scalar is a number/whole/integer/float?
How do I keep persistent data across program calls?
How do I print out or copy a recursive data structure?
How do I define methods for every class/object?
How do I verify a credit card checksum?
How do I pack arrays of doubles or floats for XS code?
AUTHOR AND COPYRIGHT
perlfaq5 - Files and Formats
- VERSION
- DESCRIPTION
How do I flush/unbuffer an output filehandle? Why must I do this?
How do I change, delete, or insert a line in a file, or append to the beginning of a file?
How do I count the number of lines in a file?
How do I delete the last N lines from a file?
How can I use Perl's
-i
option from within a program?How can I copy a file?
How do I make a temporary file name?
How can I manipulate fixed-record-length files?
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?
How can I use a filehandle indirectly?
How can I open a filehandle to a string?
How can I set up a footer format to be used with write()?
How can I write() into a string?
How can I output my numbers with commas added?
How can I translate tildes (~) in a filename?
When I open a file read-write, why does it wipe it out?
Why do I sometimes get an "Argument list too long" when I use <*>?
How can I open a file named with a leading ">" or trailing blanks?
How can I reliably rename a file?
How can I lock a file?
Why can't I just open(FH, ">file.lock")?
I still don't get locking. I just want to increment the number in the file. How can I do this?
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?
How do I randomly update a binary file?
How do I get a file's timestamp in perl?
How do I set a file's timestamp in perl?
How do I print to more than one file at once?
How can I read in an entire file all at once?
How can I read in a file by paragraphs?
How can I read a single character from a file? From the keyboard?
How can I tell whether there's a character waiting on a filehandle?
How do I do a
tail -f
in perl?How do I dup() a filehandle in Perl?
How do I close a file descriptor by number?
Why can't I use "C:\temp\foo" in DOS paths? Why doesn't `C:\temp\foo.exe` work?
Why doesn't glob("*.*") get all the files?
Why does Perl let me delete read-only files? Why does
-i
clobber protected files? Isn't this a bug in Perl?How do I select a random line from a file?
Why do I get weird spaces when I print an array of lines?
How do I traverse a directory tree?
How do I delete a directory tree?
How do I copy an entire directory?
AUTHOR AND COPYRIGHT
perlfaq6 - Regular Expressions
- VERSION
- DESCRIPTION
- How can I hope to use regular expressions without creating illegible and unmaintainable code?
Comments Outside the Regex, Comments Inside the Regex, Different Delimiters
I'm having trouble matching over more than one line. What's wrong?
How can I pull out lines between two patterns that are themselves on different lines?
How do I match XML, HTML, or other nasty, ugly things with a regex?
I put a regular expression into $/ but it didn't work. What's wrong?
How do I substitute case-insensitively on the LHS while preserving case on the RHS?
How can I make
\w
match national character sets?How can I match a locale-smart version of
/[a-zA-Z]/
?How can I quote a variable to use in a regex?
What is
/o
really for?How do I use a regular expression to strip C-style comments from a file?
Can I use Perl regular expressions to match balanced text?
What does it mean that regexes are greedy? How can I get around it?
How do I process each word on each line?
How can I print out a word-frequency or line-frequency summary?
How can I do approximate matching?
How do I efficiently match many regular expressions at once?
Why don't word-boundary searches with
\b
work for me?Why does using $&, $`, or $' slow my program down?
What good is
\G
in a regular expression?Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
What's wrong with using grep in a void context?
How can I match strings with multibyte characters?
How do I match a regular expression that's in a variable?
AUTHOR AND COPYRIGHT
perlfaq7 - General Perl Language Issues
- VERSION
- DESCRIPTION
- Can I get a BNF/yacc/RE for the Perl language?
- What are all these $@%&* punctuation signs, and how do I know when to use them?
- Do I always/never have to quote my strings or use semicolons and commas?
- How do I skip some return values?
- How do I temporarily block warnings?
- What's an extension?
- Why do Perl operators have different precedence than C operators?
- How do I declare/create a structure?
- How do I create a module?
- How do I adopt or take over a module already on CPAN?
- How do I create a class?
- How can I tell if a variable is tainted?
- What's a closure?
- What is variable suicide and how can I prevent it?
- How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regex}?
Passing Variables and Functions, Passing Filehandles, Passing Regexes, Passing Methods
How do I create a static variable?
What's the difference between dynamic and lexical (static) scoping? Between local() and my()?
How can I access a dynamic variable while a similarly named lexical is in scope?
What's the difference between deep and shallow binding?
Why doesn't "my($foo) = <$fh>;" work right?
How do I redefine a builtin function, operator, or method?
What's the difference between calling a function as &foo and foo()?
How do I create a switch or case statement?
How can I catch accesses to undefined variables, functions, or methods?
Why can't a method included in this same file be found?
How can I find out my current or calling package?
How can I comment out a large block of Perl code?
How do I clear a package?
How can I use a variable as a variable name?
What does "bad interpreter" mean?
Do I need to recompile XS modules when there is a change in the C library?
AUTHOR AND COPYRIGHT
perlfaq8 - System Interaction
- VERSION
- DESCRIPTION
- How do I find out which operating system I'm running under?
- Why does exec() not return?
- How do I do fancy stuff with the keyboard/screen/mouse?
Keyboard, Screen, Mouse
- How do I print something out in color?
- How do I read just one key without waiting for a return key?
- How do I check whether input is ready on the keyboard?
- How do I clear the screen?
- How do I get the screen size?
- How do I ask the user for a password?
- How do I read and write the serial port?
lockfiles, open mode, end of line, flushing output, non-blocking input
- How do I decode encrypted password files?
- How do I start a process in the background?
STDIN, STDOUT, and STDERR are shared, Signals, Zombies
- How do I trap control characters/signals?
- How do I modify the shadow password file on a Unix system?
- How do I set the time and date?
- How can I sleep() or alarm() for under a second?
- How can I measure time under a second?
- How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
- Why doesn't my sockets program work under System V (Solaris)? What does the error message "Protocol not supported" mean?
- How can I call my system's unique C functions from Perl?
- Where do I get the include files to do ioctl() or syscall()?
- Why do setuid perl scripts complain about kernel problems?
- How can I open a pipe both to and from a command?
- Why can't I get the output of a command with system()?
- How can I capture STDERR from an external command?
- Why doesn't open() return an error when a pipe open fails?
- What's wrong with using backticks in a void context?
- How can I call backticks without shell processing?
- Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?
- How can I convert my shell script to perl?
- Can I use perl to run a telnet or ftp session?
- How can I write expect in Perl?
- Is there a way to hide perl's command line from programs such as "ps"?
- I {changed directory, modified my environment} in a perl script. How come the change disappeared when I exited the script? How do I get my changes to be visible?
Unix
- How do I close a process's filehandle without waiting for it to complete?
- How do I fork a daemon process?
- How do I find out if I'm running interactively or not?
- How do I timeout a slow event?
- How do I set CPU limits?
- How do I avoid zombies on a Unix system?
- How do I use an SQL database?
- How do I make a system() exit on control-C?
- How do I open a file without blocking?
- How do I tell the difference between errors from the shell and perl?
- How do I install a module from CPAN?
- What's the difference between require and use?
- How do I keep my own module/library directory?
- How do I add the directory my program lives in to the module/library search path?
- How do I add a directory to my include path (@INC) at runtime?
the
PERLLIB
environment variable, thePERL5LIB
environment variable, theperl -Idir
command line flag, thelib
pragma:, the local::lib module:
Where are modules installed?
What is socket.ph and where do I get it?
AUTHOR AND COPYRIGHT
perlfaq9 - Web, Email and Networking
- VERSION
- DESCRIPTION
- Should I use a web framework?
- Which web framework should I use?
Catalyst, Dancer2, Mojolicious, Web::Simple
- What is Plack and PSGI?
- How do I remove HTML from a string?
- How do I extract URLs?
- How do I fetch an HTML file?
- How do I automate an HTML form submission?
- How do I decode or create those %-encodings on the web?
- How do I redirect to another page?
- How do I put a password on my web pages?
- How do I make sure users can't enter values into a form that causes my CGI script to do bad things?
- How do I parse a mail header?
- How do I check a valid mail address?
- How do I decode a MIME/BASE64 string?
- How do I find the user's mail address?
- How do I send email?
Email::Sender::Transport::Sendmail, Email::Sender::Transport::SMTP
How do I use MIME to make an attachment to a mail message?
How do I read email?
How do I find out my hostname, domainname, or IP address?
How do I fetch/put an (S)FTP file?
How can I do RPC in Perl?
AUTHOR AND COPYRIGHT
perlsyn - Perl syntax: declarations, statements, comments
- DESCRIPTION
- Declarations
- Comments
- Simple Statements
- Statement Modifiers
- Compound Statements
- Loop Control
- For Loops
- Foreach Loops
- Try Catch Exception Handling
- Basic BLOCKs
- defer blocks
- Switch Statements
- Goto
- The Ellipsis Statement
- PODs: Embedded Documentation
- Plain Old Comments (Not!)
- Experimental Details on given and when
1, 2, 3, 4, 5, 6, 7, 8, 9, 10
perldata - Perl data types
- DESCRIPTION
Variable names
Identifier parsing
Context
Scalar values
Scalar value constructors
List value constructors
Subscripts
Multi-dimensional array emulation
Slices
Typeglobs and Filehandles
SEE ALSO
perlop - Perl expressions: operators, precedence, string literals
- DESCRIPTION
- Operator Precedence and Associativity
- Terms and List Operators (Leftward)
- The Arrow Operator
- Auto-increment and Auto-decrement
- Exponentiation
- Symbolic Unary Operators
- Binding Operators
- Multiplicative Operators
- Additive Operators
- Shift Operators
- Named Unary Operators
- Relational Operators
- Equality Operators
- Class Instance Operator
- Smartmatch Operator
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
- Bitwise And
- Bitwise Or and Exclusive Or
- C-style Logical And
- C-style Logical Or
- C-style Logical Xor
- Logical Defined-Or
- Range Operators
- Conditional Operator
- Assignment Operators
- Comma Operator
- List Operators (Rightward)
- Logical Not
- Logical And
- Logical or and Exclusive Or
- C Operators Missing From Perl
unary &, unary *, (TYPE)
- Quote and Quote-like Operators
[1], [2], [3], [4], [5], [6], [7], [8]
- Regexp Quote-Like Operators
qr/STRING/msixpodualn
,m/PATTERN/msixpodualngc
,/PATTERN/msixpodualngc
, The empty pattern//
, Matching in list context,\G assertion
,m?PATTERN?msixpodualngc
,s/PATTERN/REPLACEMENT/msixpodualngcer
- Quote-Like Operators
q/STRING/
,'STRING'
,qq/STRING/
,"STRING"
,qx/STRING/
,`STRING`
,qw/STRING/
,tr/SEARCHLIST/REPLACEMENTLIST/cdsr
,y/SEARCHLIST/REPLACEMENTLIST/cdsr
,<<EOF
, Double Quotes, Single Quotes, Backticks, Indented Here-docs- Gory details of parsing quoted constructs
Finding the end, Interpolation ,
<<'EOF'
,m''
, the pattern ofs'''
,''
,q//
,tr'''
,y'''
, the replacement ofs'''
,tr///
,y///
,""
,``
,qq//
,qx//
,<file*glob>
,<<"EOF"
, The replacement ofs///
,RE
inm?RE?
,/RE/
,m/RE/
,s/RE/foo/
,, Parsing regular expressions , Optimization of regular expressions
I/O Operators
Constant Folding
No-ops
Bitwise String Operators
Integer Arithmetic
Floating-point Arithmetic
Bigger Numbers
- APPENDIX
List of Extra Paired Delimiters
perlsub - Perl subroutines (user-defined functions)
- SYNOPSIS
- DESCRIPTION
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
Signatures
Private Variables via my()
Persistent Private Variables
Temporary Values via local()
Lvalue subroutines
Lexical Subroutines
Passing Symbol Table Entries (typeglobs)
When to Still Use local()
Pass by Reference
Prototypes
Constant Functions
Overriding Built-in Functions
Autoloading
Subroutine Attributes
SEE ALSO
perlfunc - Perl builtin functions
- DESCRIPTION
- Perl Functions by Category
Functions for SCALARs or strings , Regular expressions and pattern matching , Numeric functions , Functions for real
@ARRAYs
, Functions for list data , Functions for real%HASHes
, Input and output functions
, Functions for fixed-length data or records, Functions for filehandles, files, or directories
, Keywords related to the control flow of your Perl program , Keywords related to scoping, Miscellaneous functions, Functions for processes and process groups
, Keywords related to Perl modules , Keywords related to classes and object-orientation
, Low-level socket functions , System V interprocess communication functions
, Fetching user and group info
, Fetching network info , Time-related functions , Non-function keywords- Portability
- Alphabetical Listing of Perl Functions
-X FILEHANDLE
, -X EXPR, -X DIRHANDLE, -X, abs VALUE , abs, accept NEWSOCKET,GENERICSOCKET , alarm SECONDS , alarm, atan2 Y,X , bind SOCKET,NAME , binmode FILEHANDLE, LAYER
, binmode FILEHANDLE, bless REF,CLASSNAME , bless REF, Bless the referred-to item into a specific package (recommended form):, Bless the referred-to item into packagemain
:, 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"unicode_eval"
feature, Outside the"unicode_eval"
feature, If upgraded,$v
will be"\xc4\x80"
(i.e., theuse utf8
has no effect.), If non-upgraded,$v
will be"\x{100}"
, 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, Ifuse bytes
is in effect:, Otherwise, ifuse locale
forLC_CTYPE
is in effect:, Otherwise, If EXPR has the UTF8 flag set:, Otherwise, ifuse feature 'unicode_strings'
oruse locale ':not_characters'
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, Usingundef
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, Assigning a filehandle to a bareword, Callingopen
with one argument via global variables, 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-styleopen
, 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__ , __CLASS__ , 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///- 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
perlopentut - simple recipes for opening files and pipes in Perl
- DESCRIPTION
OK, HANDLE, MODE, PATHNAME
- Opening Text Files
Opening Text Files for Reading
Opening Text Files for Writing
- Opening Binary Files
- Opening Pipes
Opening a pipe for reading
Opening a pipe for writing
Expressing the command as a list
SEE ALSO
AUTHOR and COPYRIGHT
perlpacktut - tutorial on pack and unpack
- DESCRIPTION
- The Basic Principle
- Packing Text
- Packing Numbers
Integers
Unpacking a Stack Frame
How to Eat an Egg on a Net
Byte-order modifiers
Floating point Numbers
- Exotic Templates
Bit Strings
Uuencoding
Doing Sums
Unicode
Another Portable Binary Encoding
- Template Grouping
- Lengths and Widths
String Lengths
Dynamic Templates
Counting Repetitions
Intel HEX
- Packing and Unpacking C Structures
The Alignment Pit
Dealing with Endian-ness
Alignment, Take 2
Alignment, Take 3
Pointers for How to Use Them
Pack Recipes
Funnies Section
Authors
perlpod - the Plain Old Documentation format
- DESCRIPTION
- Ordinary Paragraph
- Verbatim Paragraph
- Command Paragraph
=head1 Heading Text
,=head2 Heading Text
,=head3 Heading Text
,=head4 Heading Text
,=head5 Heading Text
,=head6 Heading Text
,=over indentlevel
,=item stuff...
,=back
,=cut
,=pod
,=begin formatname
,=end formatname
,=for formatname text...
,=encoding encodingname
- Formatting Codes
I<text>
-- italic text ,B<text>
-- bold text
,C<code>
-- code text
,L<name>
-- a hyperlink ,E<escape>
-- a character escape
,F<filename>
-- used for filenames ,S<text>
-- text contains non-breaking spaces
,X<topic name>
-- an index entry
,Z<>
-- a null (zero-effect) formatting code
The Intent
Embedding Pods in Perl Modules
Hints for Writing Pod
SEE ALSO
AUTHOR
perlpodspec - Plain Old Documentation: format specification and notes
- DESCRIPTION
- Pod Definitions
- Pod Commands
"=head1", "=head2", "=head3", "=head4", "=head5", "=head6", "=pod", "=cut", "=over", "=item", "=back", "=begin formatname", "=begin formatname parameter", "=end formatname", "=for formatname text...", "=encoding encodingname"
- Pod Formatting Codes
I<text>
-- italic text,B<text>
-- bold text,C<code>
-- code text,F<filename>
-- style for filenames,X<topic name>
-- an index entry,Z<>
-- a null (zero-effect) formatting code,L<name>
-- a hyperlink,E<escape>
-- a character escape,S<text>
-- text contains non-breaking spaces- Notes on Implementing Pod Processors
- About L<...> Codes
First:, Second:, Third:, Fourth:, Fifth:, Sixth:
About =over...=back Regions
About Data Paragraphs and "=begin/=end" Regions
SEE ALSO
AUTHOR
perldocstyle - A style guide for writing Perl's documentation
- DESCRIPTION
Purpose of this guide
Intended audience
Status of this document
- FUNDAMENTALS
Choice of markup: Pod
Choice of language: American English
Choice of encoding: UTF-8
Choice of underlying style guide: CMOS
Contributing to Perl's documentation
- FORMATTING AND STRUCTURE
Document structure
Formatting rules
Adding comments
Perlfunc has special rules
- TONE AND STYLE
Apply one of the four documentation modes
Assume readers' intelligence, but not their knowledge
Use meaningful variable and symbol names in examples
Write in English, but not just for English-speakers
Omit placeholder text or commentary
Apply section-breaks and examples generously
Lead with common cases and best practices
Document Perl's present
The documentation speaks with one voice
- INDEX OF PREFERRED TERMS
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
SEE ALSO
AUTHOR
perlpodstyle - Perl POD style guide
- DESCRIPTION
NAME, SYNOPSIS, DESCRIPTION, OPTIONS, RETURN VALUE, ERRORS, DIAGNOSTICS, EXAMPLES, ENVIRONMENT, FILES, CAVEATS, BUGS, RESTRICTIONS, NOTES, AUTHOR, HISTORY, COPYRIGHT AND LICENSE, SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
perldiag - various Perl diagnostics
DESCRIPTION
SEE ALSO
perldeprecation - list Perl deprecations
- DESCRIPTION
Unscheduled Deprecations
Perl 5.44
Perl 5.42
Perl 5.40
Perl 5.38
Perl 5.34
Perl 5.32
Perl 5.30
Perl 5.28
Perl 5.26
Perl 5.24
Perl 5.16
SEE ALSO
perllexwarn - Perl Lexical Warnings
DESCRIPTION
perldebug - Perl debugging
- DESCRIPTION
- The Perl Debugger
- Calling the Debugger
perl -d program_name, perl -d -e 0, perl -d:ptkdb program_name, perl -dt threaded_program_name
- 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]- Configurable Options
recallCommand
,ShellBang
,pager
,tkRunning
,signalLevel
,warnLevel
,dieLevel
,AutoTrace
,LineInfo
,inhibit_exit
,PrintRet
,ornaments
,frame
,maxTraceLen
,windowSize
,arrayDepth
,hashDepth
,dumpDepth
,compactDump
,veryCompact
,globPrint
,DumpDBFiles
,DumpPackages
,DumpReused
,quote
,HighBit
,undefPrint
,UsageOnly
,HistFile
,HistSize
,TTY
,noTTY
,ReadLine
,NonStop
- Debugger Input/Output
Prompt, Multiline commands, Stack backtrace , Line Listing Format, Frame listing
Debugging Compile-Time Statements
Debugger Customization
Readline Support / History in the Debugger
Editor Support for Debugging
The Perl Profiler
Debugging Regular Expressions
Debugging Memory Usage
SEE ALSO
BUGS
perlvar - Perl predefined variables
- DESCRIPTION
The Syntax of Variable Names
- SPECIAL VARIABLES
- General Variables
$ARG
,$_
,@ARG
,@_
,$LIST_SEPARATOR
, $" ,$PROCESS_ID
,$PID
, $$ ,$PROGRAM_NAME
,$0
,$REAL_GROUP_ID
,$GID
, $(
,$EFFECTIVE_GROUP_ID
,$EGID
, $) ,$REAL_USER_ID
,$UID
, $< ,$EFFECTIVE_USER_ID
,$EUID
, $> ,$SUBSCRIPT_SEPARATOR
,$SUBSEP
, $; ,$a
,$b
,%ENV
,$OLD_PERL_VERSION
, $] ,$SYSTEM_FD_MAX
, $^F
,@F
,@INC
,%INC
,$INC
,$INPLACE_EDIT
, $^I ,@ISA
, $^M , ${^MAX_NESTED_EVAL_BEGIN_BLOCKS},$OSNAME
, $^O ,%SIG
, %{^HOOK} , require__before, require__after,$BASETIME
, $^T ,$PERL_VERSION
, $^V ,$EXECUTABLE_NAME
, $^X- Variables related to regular expressions
$<digits> ($1,
$2
, ...) , @{^CAPTURE}
,$MATCH
, $& , ${^MATCH} ,$PREMATCH
, $` , ${^PREMATCH} ,$POSTMATCH
, $' , ${^POSTMATCH} ,$LAST_PAREN_MATCH
, $+ ,$LAST_SUBMATCH_RESULT
, $^N ,@LAST_MATCH_END
, @+ , %{^CAPTURE},%LAST_PAREN_MATCH
, %+ ,@LAST_MATCH_START
, @- ,$`
is the same assubstr($var, 0, $-[0])
,$&
is the same assubstr($var, $-[0], $+[0] - $-[0])
,$'
is the same assubstr($var, $+[0])
,$1
is the same assubstr($var, $-[1], $+[1] - $-[1])
,$2
is the same assubstr($var, $-[2], $+[2] - $-[2])
,$3
is the same assubstr($var, $-[3], $+[3] - $-[3])
, %{^CAPTURE_ALL} , %- , ${^LAST_SUCCESSFUL_PATTERN},$LAST_REGEXP_CODE_RESULT
, $^R , ${^RE_COMPILE_RECURSION_LIMIT} , ${^RE_DEBUG_FLAGS} , ${^RE_TRIE_MAXBUF}- Variables related to filehandles
$ARGV
,@ARGV
, ARGV , ARGVOUT , IO::Handle->output_field_separator( EXPR ),$OUTPUT_FIELD_SEPARATOR
,$OFS
, $, , HANDLE->input_line_number( EXPR ),$INPUT_LINE_NUMBER
,$NR
, $. , IO::Handle->input_record_separator( EXPR ),$INPUT_RECORD_SEPARATOR
,$RS
, $/ , IO::Handle->output_record_separator( EXPR ),$OUTPUT_RECORD_SEPARATOR
,$ORS
, $\ , HANDLE->autoflush( EXPR ),$OUTPUT_AUTOFLUSH
, $| , ${^LAST_FH} ,$ACCUMULATOR
, $^A , IO::Handle->format_formfeed(EXPR),$FORMAT_FORMFEED
, $^L , HANDLE->format_page_number(EXPR),$FORMAT_PAGE_NUMBER
, $% , HANDLE->format_lines_left(EXPR),$FORMAT_LINES_LEFT
, $- , IO::Handle->format_line_break_characters EXPR,$FORMAT_LINE_BREAK_CHARACTERS
,$:
, HANDLE->format_lines_per_page(EXPR),$FORMAT_LINES_PER_PAGE
, $= , HANDLE->format_top_name(EXPR),$FORMAT_TOP_NAME
, $^ , HANDLE->format_name(EXPR),$FORMAT_NAME
, $~- Error Variables
${^CHILD_ERROR_NATIVE} ,
$EXTENDED_OS_ERROR
, $^E
,$EXCEPTIONS_BEING_CAUGHT
, $^S ,$WARNING
, $^W , ${^WARNING_BITS} ,$OS_ERROR
,$ERRNO
, $! ,%OS_ERROR
,%ERRNO
, %! ,$CHILD_ERROR
, $? ,$EVAL_ERROR
, $@- Variables related to the interpreter state
$COMPILING
, $^C ,$DEBUGGING
, $^D , ${^GLOBAL_PHASE} , CONSTRUCT, START, CHECK, INIT, RUN, END, DESTRUCT, $^H , %^H , ${^OPEN} ,$PERLDB
, $^P
, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, 0x400, 0x800, 0x1000, ${^TAINT} , ${^SAFE_LOCALES} , ${^UNICODE} , ${^UTF8CACHE} , ${^UTF8LOCALE}- Deprecated and removed variables
$# , $* , $[ , ${^ENCODING} , ${^WIN32_SLOPPY_STAT}
perlre - Perl regular expressions
- DESCRIPTION
- The Basics
- Modifiers
m
,s
,i
,x
andxx
,p
,a
,d
,l
, andu
,n
, Other Modifiers- Regular Expressions
[1], [2], [3], [4], [5], [6], [7], [8]
- Quoting metacharacters
- Extended Patterns
(?#text)
,(?adlupimnsx-imnsx)
,(?^alupimnsx)
,(?:pattern)
,(?adluimnsx-imnsx:pattern)
,(?^aluimnsx:pattern)
,(?|pattern)
, Lookaround Assertions ,(?=pattern)
,(*pla:pattern)
,(*positive_lookahead:pattern)
,(?!pattern)
,(*nla:pattern)
,(*negative_lookahead:pattern)
,(?<=pattern)
,\K
,(*plb:pattern)
,(*positive_lookbehind:pattern)
,(?<!pattern)
,(*nlb:pattern)
,(*negative_lookbehind:pattern)
,(?<NAME>pattern)
,(?'NAME'pattern)
,\k<NAME>
,\k'NAME'
,\k{NAME}
,(?{ code })
,(*{ code })
,(??{ code })
,(?PARNO) (?-PARNO) (?+PARNO) (?R) (?0)
,(?&NAME)
,(?(condition)yes-pattern|no-pattern)
,(?(condition)yes-pattern)
, an integer in parentheses, a lookahead/lookbehind/evaluate zero-width assertion;, a name in angle brackets or single quotes, the special symbol(R)
,(1) (2)
..,(<NAME>) ('NAME')
,(?=...) (?!...) (?<=...) (?<!...)
,(?{ CODE })
,(*{ CODE })
,(R)
,(R1) (R2)
..,(R&NAME)
,(DEFINE)
,(?>pattern)
,(*atomic:pattern)
,(?[ ])
- Backtracking
- Script Runs
- Special Backtracking Control Verbs
Verbs,
(*PRUNE) (*PRUNE:NAME)
,(*SKIP) (*SKIP:NAME)
,(*MARK:NAME) (*:NAME)
,(*THEN) (*THEN:NAME)
,(*COMMIT) (*COMMIT:arg)
,(*FAIL) (*F) (*FAIL:arg)
,(*ACCEPT) (*ACCEPT:arg)
- Warning on \1 Instead of $1
- Repeated Patterns Matching a Zero-length Substring
- Combining RE Pieces
ST
,S|T
,S{REPEAT_COUNT}
,S{min,max}
,S{min,max}?
,S?
,S*
,S+
,S??
,S*?
,S+?
,(?>S)
,(?=S)
,(?<=S)
,(?!S)
,(?<!S)
,(??{ EXPR })
,(?PARNO)
,(?(condition)yes-pattern|no-pattern)
- Creating Custom RE Engines
- Embedded Code Execution Frequency
- PCRE/Python Support
(?P<NAME>pattern)
,(?P=NAME)
,(?P>NAME)
BUGS
SEE ALSO
perlrebackslash - Perl Regular Expression Backslash Sequences and Escapes
- DESCRIPTION
- The backslash
[1]
- All the sequences and escapes
- Character Escapes
[1], [2]
- Modifiers
- Character classes
- Referencing
- Assertions
\A, \z, \Z, \G, \b{}, \b, \B{}, \B,
\b{gcb}
or\b{g}
,\b{lb}
,\b{sb}
,\b{wb}
- Misc
\K, \N, \R , \X
perlrecharclass - Perl Regular Expression Character Classes
- DESCRIPTION
- The dot
- Backslash sequences
If the
/a
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/a
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]- Bracketed Character Classes
[1], [2], [3], [4], [5], [6], [7], If the
/a
modifier, is in effect .., otherwise .., For code points above 255 .., For code points below 256 .., if locale rules are in effect ..,word
,ascii
,blank
, if, instead, Unicode rules are in effect .., otherwise ..
perlreref - Perl Regular Expressions Reference
- DESCRIPTION
OPERATORS
SYNTAX
ESCAPE SEQUENCES
CHARACTER CLASSES
ANCHORS
QUANTIFIERS
EXTENDED CONSTRUCTS
VARIABLES
FUNCTIONS
TERMINOLOGY
AUTHOR
SEE ALSO
THANKS
perlref - Perl references and nested data structures
- NOTE
- DESCRIPTION
Making References
Using References
Circular References
Symbolic references
Not-so-symbolic references
Pseudo-hashes: Using an array as a hash
Function Templates
Postfix Dereference Syntax
Postfix Reference Slicing
Assigning to References
Declaring a Reference to a Variable
WARNING: Don't use references as hash keys
SEE ALSO
perlform - Perl formats
- DESCRIPTION
Text Fields
Numeric Fields
The Field @* for Variable-Width Multi-Line Text
The Field ^* for Variable-Width One-line-at-a-time Text
Specifying Values
Using Fill Mode
Suppressing Lines Where All Fields Are Void
Repeating Format Lines
Top of Form Processing
Format Variables
- NOTES
Footers
Accessing Formatting Internals
WARNINGS
perlobj - Perl object reference
- DESCRIPTION
- An Object is Simply a Data Structure
- A Class is Simply a Package
- A Method is Simply a Subroutine
- Method Invocation
- Inheritance
- Writing Constructors
- Attributes
- An Aside About Smarter and Safer Code
- Method Call Variations
- Invoking Class Methods
- bless, blessed, and ref
- The UNIVERSAL Class
isa($class) , DOES($role) , can($method) , VERSION($need)
AUTOLOAD
Destructors
Non-Hash Objects
Inside-Out objects
Pseudo-hashes
SEE ALSO
perltie - how to hide an object class in a simple variable
- SYNOPSIS
- DESCRIPTION
- Tying Scalars
TIESCALAR classname, LIST , FETCH this , STORE this, value , UNTIE this , DESTROY this
- 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- 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
- 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
UNTIE this
The
untie
Gotcha
SEE ALSO
BUGS
AUTHOR
perldbmfilter - Perl DBM Filters
- SYNOPSIS
- DESCRIPTION
filter_store_key, filter_store_value, filter_fetch_key, filter_fetch_value
The Filter
An Example: the NULL termination problem
Another Example: Key is a C int
SEE ALSO
AUTHOR
perlclass - Perl class syntax reference
- SYNOPSIS
- DESCRIPTION
History
- KEYWORDS
class
field
method
- ATTRIBUTES
Class attributes
Field attributes
Method attributes
- OBJECT LIFECYCLE
Construction
Adjustment
Lifetime
Destruction
- TODO
Roles, Parameters to ADJUST blocks, ADJUST blocks as true blocks, More accessor generator attributes, Metaprogramming, Extension Customisation
KNOWN BUGS
AUTHORS
perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores)
- DESCRIPTION
- Signals
- Handling the SIGHUP Signal in Daemons
- Deferred Signals (Safe Signals)
Long-running opcodes, Interrupting IO, Restartable system calls, Signals as "faults", Signals triggered by operating system state
- Named Pipes
- Using open() for IPC
Filehandles
Background Processes
Complete Dissociation of Child from Parent
Safe Pipe Opens
Avoiding Pipe Deadlocks
Bidirectional Communication with Another Process
Bidirectional Communication with Yourself
- Sockets: Client/Server Communication
Internet Line Terminators
Internet TCP Clients and Servers
Unix-Domain TCP Clients and Servers
- TCP Clients with IO::Socket
- A Simple Client
Proto
,PeerAddr
,PeerPort
A Webget Client
Interactive Client with IO::Socket
- TCP Servers with IO::Socket
Proto, LocalPort, Listen, Reuse
UDP: Message Passing
SysV IPC
NOTES
BUGS
AUTHOR
SEE ALSO
perlfork - Perl's fork() emulation
- SYNOPSIS
- DESCRIPTION
- Behavior of other Perl features in forked pseudo-processes
$$ or
$PROCESS_ID
,%ENV
, chdir() and all other builtins that accept filenames, wait() and waitpid(), kill(), exec(), exit(), Open handles to files, directories and network sockets
Resource limits
Killing the parent process
Lifetime of the parent process and pseudo-processes
- CAVEATS AND LIMITATIONS
BEGIN blocks, Open filehandles, Open directory handles, Forking pipe open() not yet implemented, Global state maintained by XSUBs, Interpreter embedded in larger application, Thread-safety of extensions
PORTABILITY CAVEATS
BUGS
AUTHOR
SEE ALSO
perlnumber - semantics of numbers and numeric operations in Perl
- SYNOPSIS
- DESCRIPTION
- Storing numbers
- Numeric operators and numeric conversions
- Flavors of Perl numeric operations
Arithmetic operators, ++, Arithmetic operators during
use integer
, Other mathematical operators, Bitwise operators, Bitwise operators duringuse integer
, Operators which expect an integer, Operators which expect a string
AUTHOR
SEE ALSO
perlthrtut - Tutorial on threads in Perl
- DESCRIPTION
- What Is A Thread Anyway?
- Threaded Program Models
Boss/Worker
Work Crew
Pipeline
- What kind of threads are Perl threads?
- Thread-Safe Modules
- Thread Basics
Basic Thread Support
A Note about the Examples
Creating Threads
Waiting For A Thread To Exit
Ignoring A Thread
Process and Thread Termination
- Threads And Data
Shared And Unshared Data
Thread Pitfalls: Races
- Synchronization and control
Controlling access: lock()
A Thread Pitfall: Deadlocks
Queues: Passing Data Around
Semaphores: Synchronizing Data Access
Basic semaphores
Advanced Semaphores
Waiting for a Condition
Giving up control
- General Thread Utility Routines
What Thread Am I In?
Thread IDs
Are These Threads The Same?
What Threads Are Running?
- A Complete Example
- Different implementations of threads
- Performance considerations
- Process-scope Changes
- Thread-Safety of System Libraries
- Conclusion
- SEE ALSO
- Bibliography
Introductory Texts
OS-Related References
Other References
Acknowledgements
AUTHOR
Copyrights
perlport - Writing portable Perl
- DESCRIPTION
Not all Perl programs have to be portable, Nearly all of Perl already is portable
- ISSUES
Newlines
Numbers endianness and Width
Files and Filesystems
System Interaction
Command names versus file pathnames
Networking
Interprocess Communication (IPC)
External Subroutines (XS)
Standard Modules
Time and Date
Character sets and character encoding
Internationalisation
System Resources
Security
Style
- CPAN Testers
- PLATFORMS
Unix
DOS and Derivatives
VMS
VOS
EBCDIC Platforms
Acorn RISC OS
Other perls
- FUNCTION IMPLEMENTATIONS
- Alphabetical Listing of Perl Functions
-X, 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
- 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
- EOL Platforms
- (Perl 5.37.1)
Ultrix
- (Perl 5.36)
NetWare, DOS/DJGPP, AT&T UWIN
- (Perl 5.20)
AT&T 3b1
- (Perl 5.14)
Windows 95, Windows 98, Windows ME, Windows NT4
- (Perl 5.12)
Atari MiNT, Apollo Domain/OS, Apple Mac OS 8/9, Tenon Machten
Supported Platforms (Perl 5.8)
SEE ALSO
AUTHORS / CONTRIBUTORS
perllocale - Perl locale handling (internationalization and localization)
- DESCRIPTION
- WHAT IS A LOCALE
Category
LC_NUMERIC
: Numeric formatting, CategoryLC_MONETARY
: Formatting of monetary amounts, CategoryLC_TIME
: Date/Time formatting, CategoryLC_COLLATE
: Collation, CategoryLC_CTYPE
: Character Types, CategoryLC_MESSAGES
: Error and other messages, CategoryLC_TIME
: Date/Time formatting, CategoryLC_ALL
, Other categories- PREPARING TO USE LOCALES
- USING LOCALES
- The "use locale" pragma
Not within the scope of
"use locale"
, Lingering effects ofuse locale
, Under"use locale";
The setlocale function
Multi-threaded operation
Finding locales
LOCALE PROBLEMS
The localeconv function
I18N::Langinfo
- LOCALE CATEGORIES
Category
LC_COLLATE
: Collation: Text Comparisons and SortingCategory
LC_CTYPE
: Character TypesCategory
LC_NUMERIC
: Numeric FormattingCategory
LC_MONETARY
: Formatting of monetary amountsCategory
LC_TIME
: Respresentation of timeCategory
LC_MESSAGES
: System messagesOther categories
- SECURITY
- ENVIRONMENT
PERL_SKIP_LOCALE_INIT, PERL_BADLANG,
LC_ALL
,LANGUAGE
,LC_CTYPE
,LC_COLLATE
,LC_MONETARY
,LC_NUMERIC
,LC_TIME
,LANG
Examples
- NOTES
String
eval
andLC_NUMERIC
Backward compatibility
I18N:Collate obsolete
Sort speed and memory use impacts
Freely available locale definitions
I18n and l10n
An imperfect standard
- Unicode and UTF-8
- BUGS
Collation of strings containing embedded
NUL
charactersLANGUAGE
Embedded perls and multi-threaded
Broken systems
SEE ALSO
HISTORY
perluniintro - Perl Unicode introduction
- DESCRIPTION
Unicode
Perl's Unicode Support
Perl's Unicode Model
Unicode and EBCDIC
Creating Unicode
Handling Unicode
Legacy Encodings
Unicode I/O
Displaying Unicode As Text
Special Cases
Advanced Topics
Miscellaneous
Questions With Answers
Hexadecimal Notation
Further Resources
UNICODE IN OLDER PERLS
SEE ALSO
ACKNOWLEDGMENTS
AUTHOR, COPYRIGHT, AND LICENSE
perlunicode - Unicode support in Perl
- DESCRIPTION
- Important Caveats
Safest if you
use feature 'unicode_strings'
, Input and Output Layers, You must convert your non-ASCII, non-UTF-8 Perl scripts to be UTF-8,use utf8
still needed to enable UTF-8 in scripts, UTF-16 scripts autodetected- Byte and Character Semantics
- ASCII Rules versus Unicode Rules
When the string has been upgraded to UTF-8, There are additional methods for regular expression patterns
- Extended Grapheme Clusters (Logical characters)
- Unicode Character Properties
\p{All}
,\p{Alnum}
,\p{Any}
,\p{ASCII}
,\p{Assigned}
,\p{Blank}
,\p{Decomposition_Type: Non_Canonical}
(Short:\p{Dt=NonCanon}
),\p{Graph}
,\p{HorizSpace}
,\p{In=*}
,\p{PerlSpace}
,\p{PerlWord}
,\p{Posix...}
,\p{Present_In: *}
(Short:\p{In=*}
),\p{Print}
,\p{SpacePerl}
,\p{Title}
and\p{Titlecase}
,\p{Unicode}
,\p{VertSpace}
,\p{Word}
,\p{XPosix...}
- Comparison of \N{...} and \p{name=...}
[1], [2], [3], [4], [5]
- Wildcards in Property Values
- User-Defined Character Properties
- User-Defined Case Mappings (for serious hackers only)
- Character Encodings for Input and Output
- Unicode Regular Expression Support Level
[1]
\N{U+...}
and\x{...}
, [2]\p{...} \P{...}
. This requirement is for a minimal list of properties. Perl supports these. See R2.7 for other properties, [3], [4], [5]\b \B
meet most, but not all, the details of this requirement, but\b{wb}
and\B{wb}
do, as well as the stricter R2.3, [6], [7], [8] UTF-8/UTF-EBDDIC used in Perl allows not onlyU+10000
toU+10FFFF
but also beyondU+10FFFF
, [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\X
and\b{gcb}
. 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
Unicode Encodings
Noncharacter code points
Beyond Unicode code points
Security Implications of Unicode
Unicode in Perl on EBCDIC
Locales
When Unicode Does Not Happen
The "Unicode Bug"
Forcing Unicode in Perl (Or Unforcing Unicode in Perl)
Using Unicode in XS
Hacking Perl to work on earlier Unicode versions (for very serious hackers only)
Porting code from perl-5.6.X
- BUGS
Interaction with Extensions
Speed
SEE ALSO
perlunicook - cookbookish examples of handling Unicode in Perl
- DESCRIPTION
- EXAMPLES
℞ 0: Standard preamble
℞ 1: Generic Unicode-savvy filter
℞ 2: Fine-tuning Unicode warnings
℞ 3: Declare source in utf8 for identifiers and literals
℞ 4: Characters and their numbers
℞ 5: Unicode literals by character number
℞ 6: Get character name by number
℞ 7: Get character number by name
℞ 8: Unicode named characters
℞ 9: Unicode named sequences
℞ 10: Custom named characters
℞ 11: Names of CJK codepoints
℞ 12: Explicit encode/decode
℞ 13: Decode program arguments as utf8
℞ 14: Decode program arguments as locale encoding
℞ 15: Declare STD{IN,OUT,ERR} to be utf8
℞ 16: Declare STD{IN,OUT,ERR} to be in locale encoding
℞ 17: Make file I/O default to utf8
℞ 18: Make all I/O and args default to utf8
℞ 19: Open file with specific encoding
℞ 20: Unicode casing
℞ 21: Unicode case-insensitive comparisons
℞ 22: Match Unicode linebreak sequence in regex
℞ 23: Get character category
℞ 24: Disabling Unicode-awareness in builtin charclasses
℞ 25: Match Unicode properties in regex with \p, \P
℞ 26: Custom character properties
℞ 27: Unicode normalization
℞ 28: Convert non-ASCII Unicode numerics
℞ 29: Match Unicode grapheme cluster in regex
℞ 30: Extract by grapheme instead of by codepoint (regex)
℞ 31: Extract by grapheme instead of by codepoint (substr)
℞ 32: Reverse string by grapheme
℞ 33: String length in graphemes
℞ 34: Unicode column-width for printing
℞ 35: Unicode collation
℞ 36: Case- and accent-insensitive Unicode sort
℞ 37: Unicode locale collation
℞ 38: Making
cmp
work on text instead of codepoints℞ 39: Case- and accent-insensitive comparisons
℞ 40: Case- and accent-insensitive locale comparisons
℞ 41: Unicode linebreaking
℞ 42: Unicode text in DBM hashes, the tedious way
℞ 43: Unicode text in DBM hashes, the easy way
℞ 44: PROGRAM: Demo of Unicode collation and printing
- SEE ALSO
§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
AUTHOR
COPYRIGHT AND LICENCE
REVISION HISTORY
perlunifaq - Perl Unicode FAQ
- Q and A
- perlunitut isn't really a Unicode tutorial, is it?
- What character encodings does Perl support?
- Which version of perl should I use?
- What about binary data, like images?
- When should I decode or encode?
- What if I don't decode?
- What if I don't encode?
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
Is there a way to automatically decode or encode?
What if I don't know which encoding was used?
Can I use Unicode in my Perl sources?
Data::Dumper doesn't restore the UTF8 flag; is it broken?
Why do regex character classes sometimes match only in the ASCII range?
Why do some characters not uppercase or lowercase correctly?
How can I determine if a string is a text string or a binary string?
How do I convert from encoding FOO to encoding BAR?
What are
decode_utf8
andencode_utf8
?What is a "wide character"?
- INTERNALS
What is "the UTF8 flag"?
What about the
use bytes
pragma?What about the
use encoding
pragma?What is the difference between
:encoding
and:utf8
?What's the difference between
UTF-8
andutf8
?I lost track; what encoding is the internal format really?
AUTHOR
SEE ALSO
perluniprops - Index of Unicode Version 15.0.0 character properties in Perl
- DESCRIPTION
- Properties accessible through \p{} and \P{}
Single form (
\p{name}
) tighter rules:, white space adjacent to a non-word character, underscores separating digits in numbers, Compound form (\p{name=value}
or\p{name:value}
) tighter rules:, Stabilized, Deprecated, Obsolete, Discouraged, * is a wild-card, (\d+) in the info column gives the number of Unicode code points matched by this property, D means this is deprecated, O means this is obsolete, S means this is stabilized, T means tighter (stricter) name matching applies, X means use of this form is discouraged, and may not be stable- Legal \p{} and \P{} constructs that match no characters
\p{Canonical_Combining_Class=Attached_Below_Left}, \p{Canonical_Combining_Class=CCC133}, \p{Grapheme_Cluster_Break=E_Base}, \p{Grapheme_Cluster_Break=E_Base_GAZ}, \p{Grapheme_Cluster_Break=E_Modifier}, \p{Grapheme_Cluster_Break=Glue_After_Zwj}, \p{Word_Break=E_Base}, \p{Word_Break=E_Base_GAZ}, \p{Word_Break=E_Modifier}, \p{Word_Break=Glue_After_Zwj}
- Properties accessible through Unicode::UCD
- Properties accessible through other means
- Unicode character properties that are NOT accepted by Perl
Expands_On_NFC (XO_NFC), Expands_On_NFD (XO_NFD), Expands_On_NFKC (XO_NFKC), Expands_On_NFKD (XO_NFKD), Grapheme_Link (Gr_Link), Jamo_Short_Name (JSN), Other_Alphabetic (OAlpha), Other_Default_Ignorable_Code_Point (ODI), Other_Grapheme_Extend (OGr_Ext), Other_ID_Continue (OIDC), Other_ID_Start (OIDS), Other_Lowercase (OLower), Other_Math (OMath), Other_Uppercase (OUpper), Script=Katakana_Or_Hiragana (sc=Hrkt), Script_Extensions=Katakana_Or_Hiragana (scx=Hrkt)
- Other information in the Unicode data base
auxiliary/GraphemeBreakTest.html, auxiliary/LineBreakTest.html, auxiliary/SentenceBreakTest.html, auxiliary/WordBreakTest.html, BidiCharacterTest.txt, BidiTest.txt, CJKRadicals.txt, confusables.txt, confusablesSummary.txt, intentional.txt, emoji/ReadMe.txt, ReadMe.txt, EmojiSources.txt, extracted/DName.txt, Index.txt, NamedSqProv.txt, NamesList.html, NamesList.txt, NormalizationCorrections.txt, NushuSources.txt, StandardizedVariants.html, StandardizedVariants.txt, TangutSources.txt, USourceData.txt, USourceGlyphs.pdf
SEE ALSO
perlunitut - Perl Unicode Tutorial
- DESCRIPTION
Definitions
Your new toolkit
I/O flow (the actual 5 minute tutorial)
SUMMARY
Q and A (or FAQ)
ACKNOWLEDGEMENTS
AUTHOR
SEE ALSO
perlebcdic - Considerations for running Perl on EBCDIC platforms
- DESCRIPTION
- COMMON CHARACTER CODE SETS
- ASCII
- ISO 8859
- Latin 1 (ISO 8859-1)
- EBCDIC
0037, 1047, POSIX-BC
Unicode code points versus EBCDIC code points
Unicode and UTF
Using Encode
- SINGLE OCTET TABLES
recipe 0, recipe 1, recipe 2, recipe 3, recipe 4, recipe 5, recipe 6
Table in hex, sorted in 1047 order
- IDENTIFYING CHARACTER CODE SETS
- CONVERSIONS
utf8::unicode_to_native()
andutf8::native_to_unicode()
tr///
iconv
C RTL
- OPERATOR DIFFERENCES
- FUNCTION DIFFERENCES
chr()
,ord()
,pack()
,print()
,printf()
,sort()
,sprintf()
,unpack()
- REGULAR EXPRESSION DIFFERENCES
- SOCKETS
- SORTING
Ignore ASCII vs. EBCDIC sort differences
Use a sort helper function
MONO CASE then sort data (for non-digits, non-underscore)
Perform sorting on one type of platform only
- TRANSFORMATION FORMATS
URL decoding and encoding
uu encoding and decoding
Quoted-Printable encoding and decoding
Caesarean ciphers
- Hashing order and checksums
- I18N AND L10N
- MULTI-OCTET CHARACTER SETS
- OS ISSUES
- OS/400
PASE, IFS access
- OS/390, z/OS
sigaction
,chcp
, dataset access,iconv
, locales
POSIX-BC?
BUGS
SEE ALSO
REFERENCES
HISTORY
AUTHOR
perlsec - Perl security
- DESCRIPTION
- SECURITY VULNERABILITY CONTACT INFORMATION
- SECURITY MECHANISMS AND CONCERNS
- Taint mode
- Laundering and Detecting Tainted Data
- Switches On the "#!" Line
- Taint mode and @INC
- Cleaning Up Your Path
- Shebang Race Condition
- Protecting Your Programs
- Unicode
- Algorithmic Complexity Attacks
Hash Seed Randomization, Hash Traversal Randomization, Bucket Order Perturbance, New Default Hash Function, Alternative Hash Functions
Using Sudo
SEE ALSO
perlsecpolicy - Perl security report handling policy
- DESCRIPTION
- REPORTING SECURITY ISSUES IN PERL
- WHAT ARE SECURITY ISSUES
Software covered by the Perl security team
Bugs that may qualify as security issues in Perl
Bugs that do not qualify as security issues in Perl
Bugs that require special categorization
- HOW WE DEAL WITH SECURITY ISSUES
Perl's vulnerability remediation workflow
Publicly known and zero-day security issues
Vulnerability credit and bounties
perlmod - Perl modules (packages and symbol tables)
- DESCRIPTION
- Is this the document you were after?
This doc, perlnewmod, perlmodstyle
Packages
Symbol Tables
BEGIN, UNITCHECK, CHECK, INIT and END
Perl Classes
Perl Modules
Making your module threadsafe
SEE ALSO
perlmodlib - constructing new Perl modules and finding existing ones
- THE PERL MODULE LIBRARY
- Pragmatic Modules
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
- 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,
IO::Socket::IP
,Socket
,Test2::Tools::Refcount
, 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::Requirements::Range, 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::Long::Parser, 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, Term::Table, Term::Table::Cell, Term::Table::CellStack, Term::Table::HashBase, Term::Table::LineBreak, Term::Table::Util, 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::AsyncSubtest, Test2::AsyncSubtest::Event::Attach, Test2::AsyncSubtest::Event::Detach, Test2::AsyncSubtest::Hub, Test2::Bundle, Test2::Bundle::Extended, Test2::Bundle::More, Test2::Bundle::Simple, Test2::Compare, Test2::Compare::Array, Test2::Compare::Bag, Test2::Compare::Base, Test2::Compare::Bool, Test2::Compare::Custom, Test2::Compare::DeepRef, Test2::Compare::Delta, Test2::Compare::Event, Test2::Compare::EventMeta, Test2::Compare::Float, Test2::Compare::Hash, Test2::Compare::Isa, Test2::Compare::Meta, Test2::Compare::Negatable, Test2::Compare::Number, Test2::Compare::Object, Test2::Compare::OrderedSubset, Test2::Compare::Pattern, Test2::Compare::Ref, Test2::Compare::Regex, Test2::Compare::Scalar, Test2::Compare::Set, Test2::Compare::String, Test2::Compare::Undef, Test2::Compare::Wildcard, 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::Manual, Test2::Manual::Anatomy, Test2::Manual::Anatomy::API, Test2::Manual::Anatomy::Context, Test2::Manual::Anatomy::Event, Test2::Manual::Anatomy::Hubs, Test2::Manual::Anatomy::IPC, Test2::Manual::Anatomy::Utilities, Test2::Manual::Concurrency, Test2::Manual::Contributing, Test2::Manual::EndToEnd, Test2::Manual::Testing, Test2::Manual::Testing::Introduction, Test2::Manual::Testing::Migrating, Test2::Manual::Testing::Planning, Test2::Manual::Testing::Todo, Test2::Manual::Tooling, Test2::Manual::Tooling::FirstTool, Test2::Manual::Tooling::Formatter, Test2::Manual::Tooling::Nesting, Test2::Manual::Tooling::Plugin::TestExit, Test2::Manual::Tooling::Plugin::TestingDone, Test2::Manual::Tooling::Plugin::ToolCompletes, Test2::Manual::Tooling::Plugin::ToolStarts, Test2::Manual::Tooling::Subtest, Test2::Manual::Tooling::TestBuilder, Test2::Manual::Tooling::Testing, Test2::Mock, Test2::Plugin, Test2::Plugin::BailOnFail, Test2::Plugin::DieOnFail, Test2::Plugin::ExitSummary, Test2::Plugin::SRand, Test2::Plugin::Times, Test2::Plugin::UTF8, Test2::Require, Test2::Require::AuthorTesting, Test2::Require::AutomatedTesting, Test2::Require::EnvVar, Test2::Require::ExtendedTesting, Test2::Require::Fork, Test2::Require::Module, Test2::Require::NonInteractiveTesting, Test2::Require::Perl, Test2::Require::RealFork, Test2::Require::ReleaseTesting, Test2::Require::Threads, Test2::Suite, Test2::Todo, Test2::Tools, Test2::Tools::AsyncSubtest, Test2::Tools::Basic, Test2::Tools::Class, Test2::Tools::ClassicCompare, Test2::Tools::Compare, Test2::Tools::Defer, Test2::Tools::Encoding, Test2::Tools::Event, Test2::Tools::Exception, Test2::Tools::Exports, Test2::Tools::GenTemp, Test2::Tools::Grab, Test2::Tools::Mock, Test2::Tools::Ref, Test2::Tools::Spec, Test2::Tools::Subtest, Test2::Tools::Target, Test2::Tools::Tester, Test2::Tools::Tiny, Test2::Tools::Warnings, Test2::Transition, Test2::Util, Test2::Util::ExternalMeta, Test2::Util::Facets2Legacy, Test2::Util::Grabber, Test2::Util::Guard, Test2::Util::HashBase, Test2::Util::Importer, Test2::Util::Ref, Test2::Util::Stash, Test2::Util::Sub, Test2::Util::Table, Test2::Util::Table::LineBreak, Test2::Util::Times, Test2::Util::Trace, Test2::V0, Test2::Workflow, Test2::Workflow::BlockBase, Test2::Workflow::Build, Test2::Workflow::Runner, Test2::Workflow::Task, Test2::Workflow::Task::Action, Test2::Workflow::Task::Group, 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
Extension Modules
- CPAN
- Modules: Creation, Use, and Abuse
Guidelines for Module Creation
Guidelines for Converting Perl 4 Library Scripts into Modules
Guidelines for Reusing Application Code
NOTE
perlmodstyle - Perl module style guide
- INTRODUCTION
- QUICK CHECKLIST
Before you start
The API
Stability
Documentation
Release considerations
- BEFORE YOU START WRITING A MODULE
Has it been done before?
Do one thing and do it well
What's in a name?
Get feedback before publishing
- DESIGNING AND WRITING YOUR MODULE
- To OO or not to OO?
- Designing your API
Write simple routines to do simple things, Separate functionality from output, Provide sensible shortcuts and defaults, Naming conventions, Parameter passing
Strictness and warnings
Backwards compatibility
Error handling and messages
- DOCUMENTING YOUR MODULE
- POD
- README, INSTALL, release notes, changelogs
perl Makefile.PL, make, make test, make install, perl Build.PL, perl Build, perl Build test, perl Build install
- RELEASE CONSIDERATIONS
Version numbering
Pre-requisites
Testing
Packaging
Licensing
- COMMON PITFALLS
Reinventing the wheel
Trying to do too much
Inappropriate documentation
- SEE ALSO
perlstyle, perlnewmod, perlpod, podchecker, Packaging Tools, Testing tools, <https://pause.perl.org/>, Any good book on software engineering
AUTHOR
perlmodinstall - Installing CPAN Modules
- DESCRIPTION
- PREAMBLE
DECOMPRESS the file, UNPACK the file into a directory, BUILD the module (sometimes unnecessary), INSTALL the module
PORTABILITY
HEY
AUTHOR
COPYRIGHT
perlnewmod - preparing a new module for distribution
- DESCRIPTION
- Warning
- What should I make into a module?
- Step-by-step: Preparing the ground
Look around, Check it's new, Discuss the need, Choose a name, Check again
- Step-by-step: Making the module
Start with module-starter or h2xs, Use strict and warnings, Use Carp, Use Exporter - wisely!, Use plain old documentation, Write tests, Write the README, Write Changes
- Step-by-step: Distributing your module
Get a CPAN user ID, Make the tarball, Upload the tarball, Fix bugs!
AUTHOR
SEE ALSO
perlpragma - how to write a user pragma
DESCRIPTION
A basic example
Key naming
Implementation details
perlutil - utilities packaged with the Perl distribution
- DESCRIPTION
- LIST OF UTILITIES
- Documentation
perldoc, pod2man, pod2text, pod2html, pod2usage, podchecker, splain, roffitall
- Converters
pl2pm
- Administration
libnetcfg, perlivp
- Development
perlbug, perlthanks, h2ph, h2xs, enc2xs, xsubpp, prove, corelist
- General tools
encguess, json_pp, piconv, ptar, ptardiff, ptargrep, shasum, streamzip, zipdetails
- Installation
cpan, instmodsh
SEE ALSO
perlfilter - Source Filters
- DESCRIPTION
- CONCEPTS
- USING FILTERS
- WRITING A SOURCE FILTER
- WRITING A SOURCE FILTER IN C
Decryption Filters
- CREATING A SOURCE FILTER AS A SEPARATE EXECUTABLE
- WRITING A SOURCE FILTER IN PERL
- USING CONTEXT: THE DEBUG FILTER
- CONCLUSION
- LIMITATIONS
- THINGS TO LOOK OUT FOR
Some Filters Clobber the
DATA
Handle
REQUIREMENTS
AUTHOR
Copyrights
perldtrace - Perl's support for DTrace
- SYNOPSIS
- DESCRIPTION
- HISTORY
- PROBES
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)
- 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
- REFERENCES
DTrace Dynamic Tracing Guide, DTrace: Dynamic Tracing in Oracle Solaris, Mac OS X and FreeBSD
- SEE ALSO
Devel::DTrace::Provider
AUTHORS
perlglossary - Perl Glossary
- VERSION
- DESCRIPTION
- A
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
- 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
- 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
- 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
- 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
- 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
- G
garbage collection, GID, glob, global, global destruction, glue language, granularity, grapheme, greedy, grep, group, GV
- H
hacker, handler, hard reference, hash, hash table, header file, here document, hexadecimal, home directory, host, hubris, HV
- 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
- J
JAPH
- K
key, keyword
- 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
- 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
- N
named pipe, namespace, NaN, network address, newline, NFS, normalization, null character, null list, null string, numeric context, numification, NV, nybble
- O
object, octal, offset, one-liner, open source software, operand, operating system, operator, operator overloading, options, ordinal, overloading, overriding, owner
- 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
- Q
qualified, quantifier
- 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
- 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
- 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
- U
UDP, UID, umask, unary operator, Unicode, Unix, uppercase, UTF-8 string
- V
value, variable, variable interpolation, variadic, vector, virtual, void context, v-string
- W
warning, watch expression, weak reference, whitespace, word, working directory, wrapper, WYSIWYG
- X
XS, XSUB
- Y
yacc
- Z
zero width, zombie
AUTHOR AND COPYRIGHT
perlembed - how to embed perl in your C program
- DESCRIPTION
- PREAMBLE
Use C from Perl?, Use a Unix program from Perl?, Use Perl from Perl?, Use C from C?, Use Perl from C?
ROADMAP
Compiling your C program
Adding a Perl interpreter to your C program
Calling a Perl subroutine from your C program
Evaluating a Perl statement from your C program
Performing Perl pattern matches and substitutions from your C program
Fiddling with the Perl stack from your C program
Maintaining a persistent interpreter
Execution of END blocks
$0
assignmentsMaintaining multiple interpreter instances
Using Perl modules, which themselves use C libraries, from your C program
Using embedded Perl with POSIX locales
Hiding Perl_
MORAL
AUTHOR
COPYRIGHT
perldebguts - Guts of Perl debugging
- DESCRIPTION
- Debugger Internals
Writing Your Own Debugger
- Frame Listing Output Examples
- Debugging Regular Expressions
- Compile-time Output
anchored
STRINGat
POS,floating
STRINGat
POS1..POS2,matching floating/anchored
,minlen
,stclass
TYPE,noscan
,isall
,GPOS
,plus
,implicit
,with eval
,anchored(TYPE)
Types of Nodes
Run-time Output
- Debugging Perl Memory Usage
- Using $ENV{PERL_DEBUG_MSTATS}
buckets SMALLEST(APPROX)..GREATEST(APPROX)
, Free/Used,Total sbrk(): SBRKed/SBRKs:CONTINUOUS
,pad: 0
,heads: 2192
,chain: 0
,tail: 6144
SEE ALSO
perlxstut - Tutorial for writing XSUBs
- DESCRIPTION
- SPECIAL NOTES
make
Version caveat
Dynamic Loading versus Static Loading
Threads and PERL_NO_GET_CONTEXT
- TUTORIAL
EXAMPLE 1
EXAMPLE 2
What has gone on?
Writing good test scripts
EXAMPLE 3
What's new here?
Input and Output Parameters
The XSUBPP Program
The TYPEMAP file
Warning about Output Arguments
EXAMPLE 4
What has happened here?
Anatomy of .xs file
Getting the fat out of XSUBs
More about XSUB arguments
The Argument Stack
Extending your Extension
Documenting your Extension
Installing your Extension
EXAMPLE 5
New Things in this Example
EXAMPLE 6
New Things in this Example
EXAMPLE 7 (Coming Soon)
EXAMPLE 8 (Coming Soon)
EXAMPLE 9 Passing open files to XSes
Troubleshooting these Examples
- See also
- Author
Last Changed
perlxs - XS language reference manual
- DESCRIPTION
- Introduction
- On The Road
- The Anatomy of an XSUB
- The Argument Stack
- The RETVAL Variable
- Returning SVs, AVs and HVs through RETVAL
- The MODULE Keyword
- The PACKAGE Keyword
- The PREFIX Keyword
- The OUTPUT: Keyword
- The NO_OUTPUT Keyword
- The CODE: Keyword
- The INIT: Keyword
- The NO_INIT Keyword
- The TYPEMAP: Keyword
- Initializing Function Parameters
- Default Parameter Values
- The PREINIT: Keyword
- The SCOPE: Keyword
- The INPUT: Keyword
- The IN/OUTLIST/IN_OUTLIST/OUT/IN_OUT Keywords
- The length(NAME) Keyword
- Variable-length Parameter Lists
- The C_ARGS: Keyword
- The PPCODE: Keyword
- Returning Undef And Empty Lists
- The REQUIRE: Keyword
- The CLEANUP: Keyword
- The POSTCALL: Keyword
- The BOOT: Keyword
- The VERSIONCHECK: Keyword
- The PROTOTYPES: Keyword
- The PROTOTYPE: Keyword
- The ALIAS: Keyword
- The OVERLOAD: Keyword
- The FALLBACK: Keyword
- The INTERFACE: Keyword
- The INTERFACE_MACRO: Keyword
- The INCLUDE: Keyword
- The INCLUDE_COMMAND: Keyword
- The CASE: Keyword
- The EXPORT_XSUB_SYMBOLS: Keyword
- The & Unary Operator
- Inserting POD, Comments and C Preprocessor Directives
- Using XS With C++
- Interface Strategy
- Perl Objects And C Structures
- Safely Storing Static Data in XS
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)
- EXAMPLES
- CAVEATS
Use of standard C library functions
Event loops and control flow
XS VERSION
AUTHOR DIAGNOSTICS
AUTHOR
perlxstypemap - Perl XS C/Perl type mapping
- DESCRIPTION
- Anatomy of a typemap
- The Role of the typemap File in Your Distribution
- Sharing typemaps Between CPAN Distributions
- Writing typemap Entries
- Full Listing of Core Typemaps
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
perlclib - Interacting with standard C library functions
- DESCRIPTION
- libc functions to avoid
- Conventions
~
,t
,p
,n
,s
File Operations
File Input and Output
File Positioning
Memory Management and String Handling
Character Class Tests
stdlib.h functions
Miscellaneous functions
- Dealing with locales
- Dealing with embedded perls and threads
- Functions always unsuitable for use under multi-threads
- Functions which must be called at least once before starting threads
- Functions that are thread-safe when called with appropriate arguments
- Functions vulnerable to signals
- General issues with thread-safety
- Reentrant equivalent functions
For items marked
*
, For the remaining items, If you #define PERL_REENTRANT, If you don't enable automatic substitution
Functions that need the environment to be constant
Locale-specific issues
SEE ALSO
perlguts - Introduction to the Perl API
- DESCRIPTION
- Variables
- Datatypes
- What is an "IV"?
- Working with SVs
SvIV(SV*)
(IV
) andSvUV(SV*)
(UV
),SvNV(SV*)
(double
), Strings are a bit complicated:, Byte string:SvPVbyte(SV*, STRLEN len)
orSvPVbyte_nolen(SV*)
, UTF-8 string:SvPVutf8(SV*, STRLEN len)
orSvPVutf8_nolen(SV*)
, You can also useSvPV(SV*, STRLEN len)
orSvPV_nolen(SV*)
to fetch the SV's raw internal buffer. This is tricky, though; if your Perl string is"\xff\xff"
, then depending on the SV's internal encoding you might get back a 2-byte OR a 4-bytechar*
. Moreover, if it's the 4-byte string, that could come from either Perl"\xff\xff"
stored UTF-8 encoded, or Perl"\xc3\xbf\xc3\xbf"
stored as raw octets. To differentiate between these you MUST look up the SV's UTF8 bit (cf.SvUTF8
) to know whether the source Perl string is 2 characters (SvUTF8
would be on) or 4 characters (SvUTF8
would be off)- Offsets
- What's Really Stored in an SV?
- Working with AVs
av_store_simple
,av_fetch_simple
,av_push_simple
, are not magical, are not readonly, are "real" (refcounted) AVs, have an av_top_index value > -2- Working with HVs
- Hash API Extensions
- AVs, HVs and undefined values
- References
- Blessed References and Class Objects
- Creating New Variables
GV_ADDMULTI, GV_ADDWARN
- Reference Counts and Mortality
- Stashes and Globs
- I/O Handles
- Double-Typed SVs
- Read-Only Values
- Copy on Write
- Magic Variables
- Assigning Magic
- Magic Virtual Tables
- Finding Magic
- Understanding the Magic of Tied Hashes and Arrays
- Localizing changes
SAVEINT(int i)
,SAVEIV(IV i)
,SAVEI32(I32 i)
,SAVELONG(long i)
,SAVEI8(I8 i)
,SAVEI16(I16 i)
,SAVEBOOL(int i)
,SAVESTRLEN(STRLEN i)
,SAVESPTR(s)
,SAVEPPTR(p)
,SAVERCPV(char **ppv)
,SAVEGENERICSV(SV **psv)
,SAVEFREESV(SV *sv)
,SAVEMORTALIZESV(SV *sv)
,SAVEFREEOP(OP *op)
,SAVEFREEPV(p)
,SAVEFREERCPV(char *pv)
,SAVECLEARSV(SV *sv)
,SAVEDELETE(HV *hv, char *key, I32 length)
,SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)
,SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)
,MORTALSVFUNC_X(SVFUNC_t f, SV *sv)
,MORTALDESTRUCTOR_SV(SV *coderef, SV *args)
,SAVESTACK_POS()
,SV* save_scalar(GV *gv)
,AV* save_ary(GV *gv)
,HV* save_hash(GV *gv)
,void save_item(SV *item)
,SV* save_svref(SV **sptr)
,void save_aptr(AV **aptr)
,void save_hptr(HV **hptr)
- Subroutines
XSUBs and the Argument Stack
Autoloading with XSUBs
Calling Perl Routines from within C Programs
Putting a C value on Perl stack
Scratchpads
Scratchpads and recursion
- Memory Allocation
Allocation
Reallocation
Moving
- PerlIO
- Compiled code
- Code tree
- Examining the tree
- Compile pass 1: check routines
- Compile pass 1a: constant folding
- Compile pass 2: context propagation
- Compile pass 3: peephole optimization
- Pluggable runops
- Compile-time scope hooks
void bhk_start(pTHX_ int full)
,void bhk_pre_end(pTHX_ OP **o)
,void bhk_post_end(pTHX_ OP **o)
,void bhk_eval(pTHX_ OP *const o)
- Examining internal data structures with the dump functions
- How multiple interpreters and concurrency are supported
Background and MULTIPLICITY
So what happened to dTHR?
How do I use all this in extensions?
Should I do anything special if I call perl from multiple threads?
Future Plans and PERL_IMPLICIT_SYS
- Internal Functions
Formatted Printing of IVs, UVs, and NVs
Formatted Printing of SVs
Formatted Printing of Strings
- Formatted Printing of Size_t and SSize_t
- Formatted Printing of Ptrdiff_t, intmax_t, short and other special sizes
- Pointer-To-Integer and Integer-To-Pointer
- Exception Handling
- Source Documentation
- Backwards compatibility
- Unicode Support
- What is Unicode, anyway?
- How can I recognise a UTF-8 string?
- How does UTF-8 represent Unicode characters?
- How does Perl store UTF-8 strings?
- How do I pass a Perl string to a C library?
bytes: 0x64 0x78 0x8c, UTF-8: 0x64 0x78 0xc2 0x8c
How do I convert a string to UTF-8?
How do I compare strings?
Is there anything else I need to know?
- Custom Operators
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
- Stacks
Value Stack
Mark Stack
Temporaries Stack
Save Stack
Scope Stack
- Dynamic Scope and the Context Stack
Introduction to the context stack
Pushing contexts
Popping contexts
Redoing contexts
- Reference-counted argument stack
- Introduction
- Reference counted stack states
not reference-counted, fully reference-counted, partially reference-counted (split)
Wrapping
(Re)writing a PP function using the rpp_() API
Slab-based operator allocation
AUTHORS
SEE ALSO
perlcall - Perl calling conventions from C
- DESCRIPTION
An Error Handler, An Event-Driven Program
- THE CALL_ FUNCTIONS
call_sv, call_pv, call_method, call_argv
- FLAG VALUES
G_VOID
G_SCALAR
G_LIST
G_DISCARD
G_NOARGS
G_EVAL
G_KEEPERR
Determining the Context
- EXAMPLES
- No Parameters, Nothing Returned
- Passing Parameters
- Returning a Scalar
- Returning a List of Values
- Returning a List in Scalar Context
- Returning Data from Perl via the Parameter List
- Using G_EVAL
- Using G_KEEPERR
- Using call_sv
- Using call_argv
- Using call_method
- Using GIMME_V
- Using Perl to Dispose of Temporaries
- Strategies for Storing Callback Context Information
1. Ignore the problem - Allow only 1 callback, 2. Create a sequence of callbacks - hard wired limit, 3. Use a parameter to map to the Perl callback
Alternate Stack Manipulation
Creating and Calling an Anonymous Subroutine in C
LIGHTWEIGHT CALLBACKS
SEE ALSO
AUTHOR
DATE
perlmroapi - Perl method resolution plugin interface
- DESCRIPTION
resolve, name, length, kflags, hash
Callbacks
Caching
Examples
AUTHORS
perlreapi - Perl regular expression plugin interface
- DESCRIPTION
- Callbacks
- comp
/m
- RXf_PMf_MULTILINE,/s
- RXf_PMf_SINGLELINE,/i
- RXf_PMf_FOLD,/x
- RXf_PMf_EXTENDED,/p
- RXf_PMf_KEEPCOPY, Character set, RXf_SPLIT, RXf_SKIPWHITE, RXf_START_ONLY, RXf_WHITE, RXf_NULL, RXf_NO_INPLACE_SUBST- exec
rx, sv, strbeg, strend, stringarg, minend, data, flags
intuit
checkstr
free
Numbered capture callbacks
Named capture callbacks
qr_package
dupe
op_comp
- The REGEXP structure
engine
mother_re
extflags
minlen minlenret
gofs
substrs
nparens
,logical_nparens
logical_to_parno
,parno_to_logical
,parno_to_logical_next
lastparen
, andlastcloseparen
intflags
pprivate
offs
RX_PRECOMP RX_PRELEN
paren_names
substrs
subbeg sublen saved_copy suboffset subcoffset
RX_WRAPPED RX_WRAPLEN
RX_REFCNT()
HISTORY
AUTHORS
LICENSE
perlreguts - Description of the Perl regular expression engine.
- DESCRIPTION
- OVERVIEW
- A quick note on terms
- What is a regular expression engine?
- Structure of a Regexp Program
regnode_1
,regnode_2
,regnode_string
,regnode_charclass
,regnode_charclass_posixl
, "REGNODE_AFTER", "regnext"
- Process Overview
A. Compilation, 1. Parsing, 2. Peep-hole optimisation and analysis, B. Execution, 3. Start position and no-match optimisations, 4. Program execution
- Compilation
anchored fixed strings, floating fixed strings, minimum and maximum length requirements, start class, Beginning/End of line positions
Execution
- MISCELLANEOUS
- Unicode and Localisation Support
- Base Structures
regstclass
,data
,code_blocks
,proglen
,name_list_idx
,program
SEE ALSO
AUTHOR
LICENCE
REFERENCES
perlclassguts - Internals of how feature 'class' and class syntax works
- DESCRIPTION
- DATA STORAGE
Classes
Fields
Methods
Instances
- API
Class Manipulation
Field Manipulation
Method Manipulation
Object Instances
- OPCODES
OP_METHSTART
OP_INITFIELD
- COMPILE-TIME BEHAVIOUR
ADJUST
PhasersAttributes
Field Initializing Expressions
- RUNTIME BEHAVIOUR
Constructor
$self
Access During Methods
AUTHORS
perlapi - autogenerated documentation for the perl public API
- 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, "Reference-counted stack manipulation" 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
- AV Handling
AV
,AvALLOC
,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_mortal
,newAV_alloc_x
,newAV_alloc_xz
,newAV
form,newAV_mortal
form,newAV_alloc_x
form,newAV_alloc_xz
form,newAVav
,newAVhv
,Nullav
- Callback Functions
call_argv
,call_method
,call_pv
,call_sv
,DESTRUCTORFUNC_NOCONTEXT_t
,DESTRUCTORFUNC_t
,ENTER
,ENTER_with_name
,eval_pv
,eval_sv
,FREETMPS
,G_DISCARD
,G_EVAL
,GIMME
,GIMME_V
,G_KEEPERR
,G_LIST
,G_NOARGS
,G_SCALAR
,G_VOID
,is_lvalue_sub
,LEAVE
,LEAVE_with_name
,MORTALDESTRUCTOR_SV
,mortal_destructor_sv
,MORTALSVFUNC_X
,PL_errgv
,save_aelem
,save_aelem_flags
,save_aptr
,save_ary
,SAVEBOOL
,SAVEDELETE
,SAVEDESTRUCTOR
,SAVEDESTRUCTOR_X
,SAVEFREEOP
,SAVEFREEPV
,SAVEFREERCPV
,SAVEFREESV
,SAVEGENERICSV
,save_hash
,save_helem
,save_helem_flags
,save_hptr
,SAVEINT
,save_item
,SAVEIV
,SAVEI8
,SAVEI16
,SAVEI32
,SAVELONG
,SAVEMORTALIZESV
,SAVEPPTR
,SAVERCPV
,save_scalar
,SAVESPTR
,SAVESTACK_POS
,SAVESTRLEN
,save_svref
,SAVETMPS
- Casting
Atof
,cBOOL
,INT2PTR
,I_V
,I_32
,PTR2IV
,PTR2nat
,PTR2NV
,PTR2ul
,PTR2UV
,PTRV
,U_V
,U_32
- Character case changing
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
- Character classification
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_uvchr
,isALPHA_L1
,isALPHA_utf8
,isALPHA_utf8_safe
,isALPHA_uvchr
,isALPHANUMERIC
,isALPHANUMERIC_A
,isALPHANUMERIC_LC
,isALPHANUMERIC_LC_utf8_safe
,isALPHANUMERIC_LC_uvchr
,isALPHANUMERIC_L1
,isALPHANUMERIC_utf8
,isALPHANUMERIC_utf8_safe
,isALPHANUMERIC_uvchr
,isASCII
,isASCII_A
,isASCII_LC
,isASCII_LC_utf8_safe
,isASCII_LC_uvchr
,isASCII_L1
,isASCII_utf8
,isASCII_utf8_safe
,isASCII_uvchr
,isBLANK
,isBLANK_A
,isBLANK_LC
,isBLANK_LC_utf8_safe
,isBLANK_LC_uvchr
,isBLANK_L1
,isBLANK_utf8
,isBLANK_utf8_safe
,isBLANK_uvchr
,isCNTRL
,isCNTRL_A
,isCNTRL_LC
,isCNTRL_LC_utf8_safe
,isCNTRL_LC_uvchr
,isCNTRL_L1
,isCNTRL_utf8
,isCNTRL_utf8_safe
,isCNTRL_uvchr
,isDIGIT
,isDIGIT_A
,isDIGIT_LC
,isDIGIT_LC_utf8_safe
,isDIGIT_LC_uvchr
,isDIGIT_L1
,isDIGIT_utf8
,isDIGIT_utf8_safe
,isDIGIT_uvchr
,isGRAPH
,isGRAPH_A
,isGRAPH_LC
,isGRAPH_LC_utf8_safe
,isGRAPH_LC_uvchr
,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
,isIDFIRST_LC_uvchr
,isIDFIRST_L1
,isIDFIRST_utf8
,isIDFIRST_utf8_safe
,isIDFIRST_uvchr
,isLOWER
,isLOWER_A
,isLOWER_LC
,isLOWER_LC_utf8_safe
,isLOWER_LC_uvchr
,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_uvchr
,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_uvchr
,isPUNCT_L1
,isPUNCT_utf8
,isPUNCT_utf8_safe
,isPUNCT_uvchr
,isSPACE
,isSPACE_A
,isSPACE_LC
,isSPACE_LC_utf8_safe
,isSPACE_LC_uvchr
,isSPACE_L1
,isSPACE_utf8
,isSPACE_utf8_safe
,isSPACE_uvchr
,isUPPER
,isUPPER_A
,isUPPER_LC
,isUPPER_LC_utf8_safe
,isUPPER_LC_uvchr
,isUPPER_L1
,isUPPER_utf8
,isUPPER_utf8_safe
,isUPPER_uvchr
,isWORDCHAR
,isWORDCHAR_A
,isWORDCHAR_LC
,isWORDCHAR_LC_utf8_safe
,isWORDCHAR_LC_uvchr
,isWORDCHAR_L1
,isWORDCHAR_utf8
,isWORDCHAR_utf8_safe
,isWORDCHAR_uvchr
X <isWORDCHAR_uvchr>,isXDIGIT
,isXDIGIT_A
,isXDIGIT_LC
,isXDIGIT_LC_utf8_safe
,isXDIGIT_LC_uvchr
,isXDIGIT_L1
,isXDIGIT_utf8
,isXDIGIT_utf8_safe
,isXDIGIT_uvchr
- Compiler and Preprocessor information
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
- Compiler directives
__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
,STATIC
,STMT_END
,STMT_START
,UNLIKELY
- Compile-time scope hooks
BhkDISABLE
,BhkENABLE
,BhkENTRY_set
,blockhook_register
- Concurrency
aTHX
,aTHX_
,CPERLscope
,dTHR
,dTHX
,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
,MULTIPLICITY
,OLD_PTHREAD_CREATE_JOINABLE
,OLD_PTHREADS_API
,PERL_IMPLICIT_CONTEXT
,PERL_NO_GET_CONTEXT
,pTHX
,pTHX_
,SCHED_YIELD
- COPs and Hint Hashes
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_hints_exists_sv
,cop_hints_fetch_pv
,cop_hints_fetch_pvn
,cop_hints_fetch_pvs
,cop_hints_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
- Custom Operators
custom_op_register
,Perl_custom_op_xop
,XopDISABLE
,XopENABLE
,XopENTRY
,XopENTRYCUSTOM
,XopENTRY_set
,XopFLAGS
- CV Handling
caller_cx
,CvDEPTH
,CvGV
,CvSTASH
,find_runcv
,get_cv
,get_cvn_flags
,get_cvs
,Nullcv
- Debugging
av_dump
,deb
,deb_nocontext
,debstack
,dump_all
,dump_c_backtrace
,dump_eval
,dump_form
,dump_packsubs
,dump_sub
,get_c_backtrace_dump
,gv_dump
,HAS_BACKTRACE
,hv_dump
,magic_dump
,op_class
,op_dump
,PL_op
,PL_runops
,PL_sv_serial
,pmop_dump
,sv_dump
,sv_dump_depth
,vdeb
- Display functions
form
,form_nocontext
,mess
,mess_nocontext
,mess_sv
,pv_display
,pv_escape
,pv_pretty
,vform
,vmess
- Embedding, Threads, and Interpreter Cloning
call_atexit
,cv_clone
,cv_name
,cv_undef
,find_rundefsv
,get_op_descs
,get_op_names
,HAS_SKIP_LOCALE_INIT
,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_ASYNC_CHECK
,perl_clone
,perl_construct
,perl_destruct
,perl_free
,PERL_GET_CONTEXT
,PerlInterpreter
,perl_parse
,perl_run
,PERL_SET_CONTEXT
,PERL_SYS_INIT
,PERL_SYS_INIT3
,PERL_SYS_TERM
,PL_exit_flags
,PERL_EXIT_DESTRUCT_END
,PERL_EXIT_ABORT
,PERL_EXIT_WARN
,PERL_EXIT_EXPECTED
,PL_origalen
,PL_perl_destruct_level
, 0 - none, 1 - full, 2 or greater - full with checks,ptr_table_fetch
,ptr_table_free
,ptr_table_new
,ptr_table_split
,ptr_table_store
,require_pv
,vload_module
- Errno
sv_string_from_errnum
- Exception Handling (simple) Macros
dXCPT
,JMPENV_JUMP
,JMPENV_PUSH
,PL_restartop
,XCPT_CATCH
,XCPT_RETHROW
,XCPT_TRY_END
,XCPT_TRY_START
- Filesystem configuration values
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
- Floating point
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
,NV
,NVMANTBITS
,NV_OVERFLOWS_INTEGERS_AT
,NV_PRESERVES_UV
,NV_PRESERVES_UV_BITS
,NVSIZE
,NVTYPE
,NV_ZERO_IS_ALLBITS_ZERO
- General Configuration
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
,NEED_VA_COPY
,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
List of capability
HAS_foo
symbolsList of
#include
needed symbols- Global Variables
PL_check
,PL_infix_plugin
,PL_keyword_plugin
,PL_phase
- GV Handling and Stashes
amagic_call
,AMGf_noleft
,AMGf_noright
,AMGf_unary
,AMGf_assign
,amagic_deref_call
,gv_add_by_type
,Gv_AMupdate
, 1 on success and there is some overload, 0 if there is no overload, -1 if some error occurred and it couldn't croak (becausedestructing
is true),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
,gv_fetchsv_nomg
X <gv_fetchsv_nomg>,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
,PL_defstash
,save_gp
,setdefout
- Hook manipulation
rcpv_copy
,rcpv_free
,rcpv_new
,wrap_op_checker
- HV Handling
get_hv
,HE
,HEf_SVKEY
,HeHASH
,HeKEY
,HeKLEN
,HePV
,HeSVKEY
,HeSVKEY_force
,HeSVKEY_set
,HeUTF8
,HeVAL
,HV
,hv_assert
,hv_bucket_ratio
,hv_clear
,hv_clear_placeholders
,hv_copy_hints_hv
,hv_delete
,hv_deletes
,hv_delete_ent
,HvENAME
,HvENAMELEN
,HvENAMEUTF8
,hv_exists
,hv_existss
,hv_exists_ent
,hv_fetch
,hv_fetchs
,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
,PERL_HASH
,PL_modglobal
- Input/Output
do_close
,IoDIRP
,IOf_FLUSH
,IoFLAGS
,IOf_UNTAINT
,IoIFP
,IoOFP
,IoTYPE
,my_chsize
,my_dirfd
,my_pclose
,my_popen
,newIO
,PERL_FLUSHALL_FOR_CHILD
,PerlIO_apply_layers
,PerlIO_binmode
,PerlIO_canset_cnt
,PerlIO_clearerr
,PerlIO_close
,PerlIO_debug
,PerlIO_eof
,PerlIO_error
,PerlIO_exportFILE
,PerlIO_fast_gets
,PerlIO_fdopen
,PerlIO_fileno
,PerlIO_fill
,PerlIO_findFILE
,PerlIO_flush
,PerlIO_get_base
,PerlIO_get_bufsiz
,PerlIO_get_cnt
,PerlIO_get_ptr
,PerlIO_getc
,PerlIO_getpos
,PerlIO_has_base
,PerlIO_has_cntptr
,PerlIO_importFILE
,PerlIO_open
,PerlIO_printf
,PerlIO_putc
,PerlIO_puts
,PerlIO_read
,PerlIO_releaseFILE
,PerlIO_reopen
,PerlIO_rewind
,PerlIO_seek
,PerlIO_set_cnt
,PerlIO_set_ptrcnt
,PerlIO_setlinebuf
,PerlIO_setpos
,PerlIO_stderr
,PerlIO_stdin
,PerlIO_stdout
,PerlIO_stdoutf
,PerlIO_tell
,PerlIO_ungetc
,PerlIO_unread
,PerlIO_vprintf
,PerlIO_write
,PERLIO_F_APPEND
,PERLIO_F_CANREAD
,PERLIO_F_CANWRITE
,PERLIO_F_CRLF
,PERLIO_F_EOF
,PERLIO_F_ERROR
,PERLIO_F_FASTGETS
,PERLIO_F_LINEBUF
,PERLIO_F_OPEN
,PERLIO_F_RDBUF
,PERLIO_F_TEMP
,PERLIO_F_TRUNCATE
,PERLIO_F_UNBUF
,PERLIO_F_UTF8
,PERLIO_F_WRBUF
,PERLIO_FUNCS_CAST
,PERLIO_FUNCS_DECL
,PERLIO_K_BUFFERED
,PERLIO_K_CANCRLF
,PERLIO_K_FASTGETS
,PERLIO_K_MULTIARG
,PERLIO_K_RAW
,PERLIO_NOT_STDIO
,PL_maxsysfd
,repeatcpy
,USE_STDIO
- Integer
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
,I8
,I16
,I32
,I64
,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_FAST16_T
,PERL_INT_MAX
,PERL_INT_MIN
,PERL_LONG_MAX
,PERL_LONG_MIN
,PERL_QUAD_MAX
,PERL_QUAD_MIN
,PERL_SHORT_MAX
,PERL_SHORT_MIN
,PERL_UCHAR_MAX
,PERL_UCHAR_MIN
,PERL_UINT_MAX
,PERL_UINT_MIN
,PERL_ULONG_MAX
,PERL_ULONG_MIN
,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
,U8
,U16
,U32
,U64
,UV_MAX
,UV_MIN
,UVSIZE
,UVTYPE
,U32Xf
,U32xf
,WIDEST_UTYPE
- I/O Formats
HvNAMEf
,HvNAMEf_QUOTEDPREFIX
,IVdf
,NVef
,NVff
,NVgf
,PERL_PRIeldbl
,PERL_PRIfldbl
,PERL_PRIgldbl
,PERL_SCNfldbl
,PRINTF_FORMAT_NULL_OK
,SVf
,SVfARG
,SVf_QUOTEDPREFIX
,UTF8f
,UTF8fARG
,UTF8f_QUOTEDPREFIX
,UVf
,UVof
,UVuf
,UVXf
,UVxf
- Lexer interface
BHK
,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
- Locales
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_USELOCALE
,I_LANGINFO
,I_LOCALE
,IN_LOCALE
,IN_LOCALE_COMPILETIME
,IN_LOCALE_RUNTIME
,I_XLOCALE
,NEED_XLOCALE_H
,Perl_langinfo
,Perl_langinfo8
, a, b, c, d, e,PERL_LC_ALL_CATEGORY_POSITIONS_INIT
,PERL_LC_ALL_SEPARATOR
,PERL_LC_ALL_USES_NAME_VALUE_PAIRS
,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
,sv_langinfo
,switch_to_global_locale
, POSIX::localeconv, I18N::Langinfo, itemsCRNCYSTR
andTHOUSEP
, "sv_langinfo" in perlapi, itemsCRNCYSTR
andTHOUSEP
,sync_locale
,WITH_LC_NUMERIC_SET_TO_NEEDED
,WITH_LC_NUMERIC_SET_TO_NEEDED_IN
- Magic
mg_clear
,mg_copy
,MGf_COPY
,MGf_DUP
,MGf_LOCAL
,mg_find
,mg_findext
,mg_free
,mg_freeext
,mg_free_type
,mg_get
,mg_magical
,mg_set
,MGVTBL
,PERL_MAGIC_arylen
,PERL_MAGIC_arylen_p
,PERL_MAGIC_backref
,PERL_MAGIC_bm
,PERL_MAGIC_checkcall
,PERL_MAGIC_collxfrm
,PERL_MAGIC_dbfile
,PERL_MAGIC_dbline
,PERL_MAGIC_debugvar
,PERL_MAGIC_defelem
,PERL_MAGIC_destruct
,PERL_MAGIC_env
,PERL_MAGIC_envelem
,PERL_MAGIC_ext
,PERL_MAGIC_extvalue
,PERL_MAGIC_fm
,PERL_MAGIC_hints
,PERL_MAGIC_hintselem
,PERL_MAGIC_hook
,PERL_MAGIC_hookelem
,PERL_MAGIC_isa
,PERL_MAGIC_isaelem
,PERL_MAGIC_lvref
,PERL_MAGIC_nkeys
,PERL_MAGIC_nonelem
,PERL_MAGIC_overload_table
,PERL_MAGIC_pos
,PERL_MAGIC_qr
,PERL_MAGIC_regdata
,PERL_MAGIC_regdatum
,PERL_MAGIC_regex_global
,PERL_MAGIC_rhash
,PERL_MAGIC_shared
,PERL_MAGIC_shared_scalar
,PERL_MAGIC_sig
,PERL_MAGIC_sigelem
,PERL_MAGIC_substr
,PERL_MAGIC_sv
,PERL_MAGIC_symtab
,PERL_MAGIC_taint
,PERL_MAGIC_tied
,PERL_MAGIC_tiedelem
,PERL_MAGIC_tiedscalar
,PERL_MAGIC_utf8
,PERL_MAGIC_uvar
,PERL_MAGIC_uvar_elem
,PERL_MAGIC_vec
,PERL_MAGIC_vstring
,SvTIED_obj
- Memory Management
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
- MRO
HvMROMETA
,mro_get_from_name
,mro_get_linear_isa
,MRO_GET_PRIVATE_DATA
,mro_method_changed_in
,mro_register
,mro_set_mro
,mro_set_private_data
- Multicall Functions
dMULTICALL
,MULTICALL
,POP_MULTICALL
,PUSH_MULTICALL
- Numeric Functions
Atol
,Atoul
,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
,Perl_cosh
,Perl_exp
,Perl_floor
,Perl_fmod
,Perl_frexp
,Perl_isfinite
,Perl_isinf
,Perl_isnan
,Perl_ldexp
,Perl_log
,Perl_log10
,Perl_modf
,Perl_pow
,Perl_sin
,Perl_sinh
,Perl_sqrt
,Perl_tan
,Perl_tanh
X <Perl_isinf>X <Perl_pow>,Perl_signbit
,PL_hexdigit
,READ_XDIGIT
,scan_bin
,scan_hex
,scan_oct
,seedDrand01
,Strtod
,Strtol
,Strtoul
- Optrees
alloccopstash
,BINOP
,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
,LISTOP
,LOGOP
,LOOP
,newANONATTRSUB
,newANONHASH
,newANONLIST
,newANONSUB
,newARGDEFELEMOP
,newASSIGNOP
,newATTRSUB
,newAVREF
,newBINOP
,newCONDOP
,newCONSTSUB
,newCONSTSUB_flags
,newCVREF
,newDEFEROP
,newDEFSVOP
,newFOROP
,newGIVENOP
,newGVOP
,newGVREF
,newHVREF
,newLISTOP
,newLISTOPn
,newLOGOP
,newLOOPEX
,newLOOPOP
,newMETHOP
,newMETHOP_named
,newNULLLIST
,newOP
,newPADOP
,newPMOP
,newPVOP
,newRANGE
,newSLICEOP
,newSTATEOP
,newSUB
,newSVOP
,newSVREF
,newTRYCATCHOP
,newUNOP
,newUNOP_AUX
,newWHENOP
,newWHILEOP
,newXS
,OA_BASEOP
,OA_BINOP
,OA_COP
,OA_LISTOP
,OA_LOGOP
,OA_LOOP
,OA_PADOP
,OA_PMOP
,OA_PVOP_OR_SVOP
,OA_SVOP
,OA_UNOP
,OP
,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
,peep_t
,Perl_cpeep_t
,PL_opfreehook
,PL_peepp
,PL_rpeepp
,PMOP
,rv2cv_op_cv
,UNOP
,XOP
- Pack and Unpack
packlist
,unpackstring
- Pad Data Structures
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
,SVs_PADMY
,SVs_PADTMP
- Password and Group access
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
- Paths to system commands
CSH
,LOC_SED
,SH_PATH
- Prototype information
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
- Reference-counted stack manipulation
rpp_context
,rpp_extend
,rpp_invoke_xs
,rpp_is_lone
,rpp_popfree_1_NN
,rpp_popfree_2_NN
,rpp_popfree_to
,rpp_popfree_to_NN
,rpp_popfree_1
,rpp_popfree_2
,rpp_pop_1_norc
,rpp_push_1_norc
,rpp_push_1
,rpp_push_IMM
,rpp_push_2
,rpp_xpush_1
,rpp_xpush_IMM
,rpp_xpush_2
,rpp_replace_at
,rpp_replace_at_NN
,rpp_replace_at_norc
,rpp_replace_at_norc_NN
,rpp_replace_1_1
,rpp_replace_1_1_NN
,rpp_replace_1_IMM_NN
,rpp_replace_2_1
,rpp_replace_2_1_NN
,rpp_replace_2_IMM_NN
,rpp_stack_is_rc
,rpp_try_AMAGIC_1
,rpp_try_AMAGIC_2
,XSPP_wrapped
- REGEXP Functions
pregcomp
,pregexec
,re_compile
,re_dup_guts
,REGEX_LOCALE_CHARSET
,REGEXP
,regexp_engine
,regexp_paren_pair
,regmatch_info
,REXEC_COPY_SKIP_POST
,REXEC_COPY_SKIP_PRE
,REXEC_COPY_STR
,RXapif_ALL
,RXapif_CLEAR
,RXapif_DELETE
,RXapif_EXISTS
,RXapif_FETCH
,RXapif_FIRSTKEY
,RXapif_NEXTKEY
,RXapif_ONE
,RXapif_REGNAME
,RXapif_REGNAMES
,RXapif_REGNAMES_COUNT
,RXapif_SCALAR
,RXapif_STORE
,RX_BUFF_IDX_CARET_FULLMATCH
,RX_BUFF_IDX_CARET_POSTMATCH
,RX_BUFF_IDX_CARET_PREMATCH
,RX_BUFF_IDX_FULLMATCH
,RX_BUFF_IDX_POSTMATCH
,RX_BUFF_IDX_PREMATCH
,RXf_NO_INPLACE_SUBST
,RXf_NULL
,RXf_SKIPWHITE
,RXf_SPLIT
,RXf_START_ONLY
,RXf_WHITE
,RXf_PMf_EXTENDED
,RXf_PMf_FOLD
,RXf_PMf_KEEPCOPY
,RXf_PMf_MULTILINE
,RXf_PMf_SINGLELINE
,RX_MATCH_COPIED
,struct regexp
,SvRX
,SvRXOK
,SV_SAVED_COPY
- Reports and Formats
IoBOTTOM_GV
,IoBOTTOM_NAME
,IoFMT_GV
,IoFMT_NAME
,IoLINES
,IoLINES_LEFT
,IoPAGE
,IoPAGE_LEN
,IoTOP_GV
,IoTOP_NAME
- Signals
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
- Site configuration
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
- Sockets configuration values
HAS_SOCKADDR_IN6
,HAS_SOCKADDR_SA_LEN
,HAS_SOCKADDR_STORAGE
,HAS_SOCKATMARK
,HAS_SOCKET
,HAS_SOCKETPAIR
,HAS_SOCKS5_INIT
,I_SOCKS
,I_SYS_SOCKIO
- Source Filters
apply_builtin_cv_attributes
,filter_add
,filter_del
,filter_read
,scan_vstring
,start_subparse
- Stack Manipulation Macros
dMARK
,dORIGMARK
,dSP
,dTARGET
,EXTEND
,MARK
,mPUSHi
,mPUSHn
,mPUSHp
,mPUSHpvs
,mPUSHs
,mPUSHu
,mXPUSHi
,mXPUSHn
,mXPUSHp
,mXPUSHpvs
,mXPUSHs
,mXPUSHu
,newXSproto
,ORIGMARK
,PL_markstack
,PL_markstack_ptr
,PL_savestack
,PL_savestack_ix
,PL_scopestack
,PL_scopestack_ix
,PL_scopestack_name
,PL_stack_base
,PL_stack_sp
,PL_tmps_floor
,PL_tmps_ix
,PL_tmps_stack
,POPi
,POPl
,POPn
,POPp
,POPpbytex
,POPpx
,POPs
,POPu
,POPul
,PUSHi
,PUSHMARK
,PUSHmortal
,PUSHn
,PUSHp
,PUSHpvs
,PUSHs
,PUSHu
,PUTBACK
,SAVEt_INT
,SP
,SPAGAIN
,SSNEW
,SSNEWa
,SSNEWat
,SSNEWt
,SSPTR
,SSPTRt
,TARG
,TOPs
,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
- String Handling
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
,STRLEN
,strLT
,strNE
,strnEQ
,strnNE
,STR_WITH_LEN
,Zero
,ZeroD
- SV Flags
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
- SV Handling
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
,SV
,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
,SvPVbyte_nomg
,SvPVbyte_or_null
,SvPVbyte_or_null_nomg
,SvPVbytex
,SvPVbytex_nolen
,SvPVutf8
,SvPVutf8_nolen
,SvPVutf8_nomg
,SvPVutf8_or_null
,SvPVutf8_or_null_nomg
,SvPVutf8x
,SvPVx
,SvPVx_const
,SvPVx_nolen
,SvPVx_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_flags_nolen
,SvPV_force_mutable
,SvPV_force_nolen
,SvPV_force_nomg
,SvPV_force_nomg_nolen
,SvPVbyte_force
,SvPVbytex_force
,SvPVutf8_force
,SvPVutf8x_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_dec_NN
,SvREFCNT_inc
,SvREFCNT_inc_NN
,SvREFCNT_inc_simple
,SvREFCNT_inc_simple_NN
,SvREFCNT_inc_simple_void
,SvREFCNT_inc_simple_void_NN
,SvREFCNT_inc_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
- Tainting
SvTAINT
,SvTAINTED
,SvTAINTED_off
,SvTAINTED_on
- Time
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
,sv_strftime_tm
,my_strftime
- Typedef names
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
- Unicode Support X <UNICODE_DISALLOW_ILLEGAL_INTERCHANGE>
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
,UTF8NESS_YES
,UTF8NESS_NO
,UTF8NESS_IMMATERIAL
,UTF8NESS_UNKNOWN
,0 <= enum value <= UTF8NESS_IMMATERIAL
,UTF8NESS_IMMATERIAL <= <enum value
,utf8n_to_uvchr
,utf8n_to_uvchr_error
,UTF8_GOT_PERL_EXTENDED
,UTF8_GOT_CONTINUATION
,UTF8_GOT_EMPTY
,UTF8_GOT_LONG
,UTF8_GOT_NONCHAR
,UTF8_GOT_NON_CONTINUATION
,UTF8_GOT_OVERFLOW
,UTF8_GOT_SHORT
,UTF8_GOT_SUPER
,UTF8_GOT_SURROGATE
,utf8n_to_uvchr_msgs
,text
,warn_categories
,flag
,UTF8_SAFE_SKIP
,UTF8SKIP
,"UTF8_SAFE_SKIP" in perlapi
if you know the maximum ending pointer in the buffer pointed to bys
; or,"UTF8_CHK_SKIP" in perlapi
if you don't know it,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
,text
,warn_categories
,flag
,uvchr_to_utf8
- Utility Functions
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
- Versioning
new_version
,PERL_REVISION
,PERL_SUBVERSION
,PERL_VERSION
,PERL_VERSION_EQ
,PERL_VERSION_GE
,PERL_VERSION_GT
,PERL_VERSION_LE
,PERL_VERSION_LT
,PERL_VERSION_NE
,prescan_version
,scan_version
,upg_version
,vcmp
,vnormal
,vnumify
,vstringify
,vverify
, 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- Warning and Dieing X <WARN_LAYER>
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
,fatal_warner
,packWARN
,packWARN2
,packWARN3
,packWARN4
,SANE_ERRSV
,vcroak
,vfatal_warner
,vwarn
,vwarner
,warn
,warn_nocontext
,warner
,warner_nocontext
,warn_sv
- XS
aMY_CXT
,_aMY_CXT
,aMY_CXT_
,ax
,CLASS
,dAX
,dAXMARK
,dITEMS
,dMY_CXT
,dMY_CXT_SV
,dUNDERBAR
,dXSARGS
,dXSI32
,items
,ix
,MY_CXT
,MY_CXT_CLONE
,MY_CXT_INIT
,pMY_CXT
,_pMY_CXT
,pMY_CXT_
,RETVAL
,ST
,START_MY_CXT
,THIS
,UNDERBAR
,XS
,XS_EXTERNAL
,XS_INTERNAL
,XSPROTO
Undocumented elements
AUTHORS
SEE ALSO
perlintern - autogenerated documentation of purely internal Perl functions
- DESCRIPTION
- AV Handling
av_fetch_simple
,AvFILLp
,av_new_alloc
,av_store_simple
- Callback Functions
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
- Casting
- Character case changing
- Character classification
- Compiler and Preprocessor information
- Compiler directives
- Compile-time scope hooks
BhkENTRY
,BhkFLAGS
,CALL_BLOCK_HOOKS
- Concurrency
CVf_SLABBED
,CvROOT
,CvSTART
,CX_CUR
,CXINC
,CX_LEAVE_SCOPE
,CX_POP
,cxstack
,cxstack_ix
,CXt_BLOCK
,CXt_EVAL
,CXt_FORMAT
,CXt_GIVEN
,CXt_LOOP_ARY
,CXt_LOOP_LAZYIV
,CXt_LOOP_LAZYSV
,CXt_LOOP_LIST
,CXt_LOOP_PLAIN
,CXt_NULL
,CXt_SUB
,CXt_SUBST
,CXt_WHEN
,cx_type
,dounwind
,my_fork
,PERL_CONTEXT
- COPs and Hint Hashes
- Custom Operators
core_prototype
- CV Handling
CvREFCOUNTED_ANYSV
,CvREFCOUNTED_ANYSV_off
,CvREFCOUNTED_ANYSV_on
,CvWEAKOUTSIDE
,docatch
- Debugging
comma_aDEPTH
,comma_pDEPTH
,debop
,debprof
,debprofdump
,debug_aDEPTH
,debug_pDEPTH
,free_c_backtrace
,get_c_backtrace
,PL_DBsingle
,PL_DBsub
,PL_DBtrace
,runops_debug
,runops_standard
- Display functions
sv_peek
- Embedding, Threads, and Interpreter Cloning
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
- Errno
dSAVEDERRNO
,dSAVE_ERRNO
,RESTORE_ERRNO
,SAVE_ERRNO
,SETERRNO
- Exception Handling (simple) Macros
- Filesystem configuration values
- Floating point
- General Configuration
- Global Variables
- GV Handling and Stashes
amagic_applies
,gp_dup
,gv_handler
,gv_stashsvpvn_cached
,gv_try_downgrade
- Hook manipulation
- HV Handling
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
- Input/Output
dirp_dup
,fp_dup
,my_fflush_all
,my_mkostemp
,my_mkstemp
,PL_last_in_gv
,PL_ofsgv
,PL_rs
,start_glob
- Integer
- I/O Formats
- Lexer interface
resume_compcv_and_save
,resume_compcv_final
,validate_proto
- Locales
- Magic
magic_clearhint
,magic_clearhints
,magic_methcall
,magic_sethint
,mg_dup
,mg_localize
- Memory Management
calloc
,malloc
,mfree
,realloc
- MRO
mro_get_linear_isa_dfs
,mro_isa_changed_in
,mro_package_moved
- Multicall Functions
- Numeric Functions
isinfnansv
- Optrees
newATTRSUB_x
,newMYSUB
,newXS_len_flags
,op_refcnt_lock
,op_refcnt_unlock
,traverse_op_tree
- Pack and Unpack
- Pad Data Structures
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
- Password and Group access
- Paths to system commands
- Prototype information
- Reference-counted stack manipulation
- REGEXP Functions
regnode
- Reports and Formats
- Signals
- Site configuration
- Sockets configuration values
- Source Filters
- Stack Manipulation Macros
djSP
,LVRET
,save_alloc
- String Handling
delimcpy_no_escape
,my_cxt_init
,quadmath_format_needed
,quadmath_format_valid
- SV Flags
SVt_INVLIST
- SV Handling
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
- Tainting
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
- Time
- Typedef names
- Unicode Support
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
- Utility Functions
my_popen_list
,my_socketpair
- Versioning
- Warning and Dieing
deprecate
,deprecate_disappears_in
,deprecate_fatal_in
,PL_dowarn
,report_uninit
XS
Undocumented elements
AUTHORS
SEE ALSO
perliol - C API for Perl's implementation of IO in Layers.
- SYNOPSIS
- DESCRIPTION
- History and Background
- Basic Structure
- Layers vs Disciplines
- Data Structures
- Functions and Attributes
- Per-instance Data
- Layers in action
- Per-instance flag bits
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
- 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
- Utilities
- Implementing PerlIO Layers
C implementations, Perl implementations
- Core Layers
"unix", "perlio", "stdio", "crlf", "mmap", "pending", "raw", "utf8"
- Extension Layers
":encoding", ":scalar", ":via"
TODO
perlapio - perl's IO abstraction interface.
- SYNOPSIS
- DESCRIPTION
1. USE_STDIO, 2. USE_PERLIO, PerlIO_stdin(), PerlIO_stdout(), PerlIO_stderr(), PerlIO_open(path, mode), PerlIO_fdopen(fd,mode), PerlIO_reopen(path,mode,f), PerlIO_printf(f,fmt,...), PerlIO_vprintf(f,fmt,a), PerlIO_stdoutf(fmt,...), PerlIO_read(f,buf,count), PerlIO_write(f,buf,count), PerlIO_fill(f), PerlIO_close(f), PerlIO_puts(f,s), PerlIO_putc(f,c), PerlIO_ungetc(f,c), PerlIO_unread(f,buf,count), PerlIO_getc(f), PerlIO_eof(f), PerlIO_error(f), PerlIO_fileno(f), PerlIO_clearerr(f), PerlIO_flush(f), PerlIO_seek(f,offset,whence), PerlIO_tell(f), PerlIO_getpos(f,p), PerlIO_setpos(f,p), PerlIO_rewind(f), PerlIO_tmpfile(), PerlIO_setlinebuf(f)
- Co-existence with stdio
PerlIO_importFILE(f,mode), PerlIO_exportFILE(f,mode), PerlIO_releaseFILE(p,f), PerlIO_findFILE(f)
- "Fast gets" Functions
PerlIO_fast_gets(f), PerlIO_has_cntptr(f), PerlIO_get_cnt(f), PerlIO_get_ptr(f), PerlIO_set_ptrcnt(f,p,c), PerlIO_canset_cnt(f), PerlIO_set_cnt(f,c), PerlIO_has_base(f), PerlIO_get_base(f), PerlIO_get_bufsiz(f)
- Other Functions
PerlIO_apply_layers(aTHX_ f,mode,layers), PerlIO_binmode(aTHX_ f,ptype,imode,layers), '<' read, '>' write, '+' read/write, PerlIO_debug(fmt,...)
perlhack - How to hack on Perl
- DESCRIPTION
- SUPER QUICK PATCH GUIDE
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
- BUG REPORTING
- PERL 5 PORTERS
perl-changes mailing list
#p5p on IRC
- GETTING THE PERL SOURCE
Read access via Git
Read access via the web
Write access via git
- PATCHING PERL
- Submitting patches
- Getting your patch accepted
Why, What, How
Patching a core module
Updating perldelta
What makes for a good patch?
- TESTING
t/base, t/comp and t/opbasic, All other subdirectories of t/, Test files not found under t/
- Special make test targets
test_porting, minitest, test.valgrind check.valgrind, test_harness, test-notty test_notty
- Parallel tests
- Running tests by hand
- Using t/harness for testing
-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
Performance testing
Building perl at older commits
- MORE READING FOR GUTS HACKERS
perlsource, perlinterp, perlhacktut, perlhacktips, perlguts, perlxstut and perlxs, perlapi, Porting/pumpkin.pod
- CPAN TESTERS AND PERL SMOKERS
- WHAT NEXT?
"The Road goes ever on and on, down from the door where it began."
Metaphoric Quotations
AUTHOR
perlsource - A guide to the Perl source tree
- DESCRIPTION
- FINDING YOUR WAY AROUND
- C code
- Core modules
lib/, ext/, dist/, cpan/
- Tests
Module tests, t/base/, t/cmd/, t/comp/, t/io/, t/mro/, t/op/, t/opbasic/, t/re/, t/run/, t/uni/, t/win32/, t/porting/, t/lib/
- Documentation
- Hacking tools and documentation
check*, Maintainers, Maintainers.pl, and Maintainers.pm, podtidy
Build system
AUTHORS
MANIFEST
perlinterp - An overview of the Perl interpreter
- DESCRIPTION
- ELEMENTS OF THE INTERPRETER
- Startup
- Parsing
- Optimization
- Running
- Exception handing
level 2: perl-level exit() and internals my_exit(), level 3: perl-level die() and internals croak(), level 1: unused, level 0: normal return
INTERNAL VARIABLE TYPES
- OP TREES
- STACKS
Argument stack
Mark stack
Save stack
MILLIONS OF MACROS
FURTHER READING
perlhacktut - Walk through the creation of a simple C code patch
- DESCRIPTION
- EXAMPLE OF A SIMPLE PATCH
Writing the patch
Testing the patch
Documenting the patch
Submit
AUTHOR
perlhacktips - Tips for Perl core C code hacking
- DESCRIPTION
- COMMON PROBLEMS
- Perl environment problems
- C99
AIX, HP/UX, Solaris
- Symbol Names and Namespace Pollution
Don't begin a symbol name with an underscore; (e.g., don't use:
_FOOBAR
), Don't use two consecutive underscores in a symbol name; (e.g., don't useFOO__BAR
)
Writing safer macros
Portability problems
Problematic System Interfaces
Security problems
- DEBUGGING
- Poking at Perl
- Using a source-level debugger
run [args], break function_name, break source.c:xxx, step, next, continue, finish, 'enter', ptype, print
gdb macro support
Dumping Perl Data Structures
Using gdb to look at specific parts of a program
Using gdb to look at what the parser/lexer are doing
- SOURCE CODE STATIC ANALYSIS
lint
Coverity
HP-UX cadvise (Code Advisor)
cpd (cut-and-paste detector)
gcc warnings
Warnings of other C compilers
- MEMORY DEBUGGERS
- valgrind
- AddressSanitizer
-Dcc=clang, -Accflags=-fsanitize=address, -Aldflags=-fsanitize=address, -Alddlflags=-shared\ -fsanitize=address, -fsanitize-blacklist=`pwd`/asan_ignore
Dr Memory
- PROFILING
- Gprof Profiling
-a, -b, -e routine, -f routine, -s, -z
- GCC gcov Profiling
- callgrind profiling
--threshold, --auto
profiler
profiling (Cygwin)Visual Studio Profiling
- MISCELLANEOUS TRICKS
- PERL_DESTRUCT_LEVEL
- Leaked SV spotting: sv_mark_arenas() and sv_sweep_arenas()
- PERL_MEM_LOG
- DDD over gdb
- C backtrace
Linux, OS X, get_c_backtrace, free_c_backtrace, get_c_backtrace_dump, dump_c_backtrace
Poison
Read-only optrees
When is a bool not a bool?
Finding unsafe truncations
The .i Targets
AUTHOR
perlgov - Perl Rules of Governance
- PREAMBLE
- Mandate
- Definitions
"Core Team", "Steering Council", "Vote Administrator"
The Core Team
The Steering Council
The Vote Administrator
- Steering Council and Core Team Members
- Steering Council Members
Graham Knop, Paul Evans, Philippe Bruhat
- Core Team Members
- Active Members
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>
- 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>
perlgit - Detailed information about git and the Perl repository
- DESCRIPTION
- CLONING THE REPOSITORY
- WORKING WITH THE REPOSITORY
Finding out your status
Patch workflow
A note on derived files
Cleaning a working directory
Bisecting
Topic branches and rewriting history
Grafts
- WRITE ACCESS TO THE GIT REPOSITORY
Working with Github pull requests
Accepting a patch
Committing to blead
On merging and rebasing
Committing to maintenance versions
Using a smoke-me branch to test changes
perlhist - the Perl history records
- DESCRIPTION
- INTRODUCTION
- THE KEEPERS OF THE PUMPKIN
PUMPKIN?
- THE RECORDS
SELECTED RELEASE SIZES
SELECTED PATCH SIZES
THE KEEPERS OF THE RECORDS
perldelta - what is new for perl v5.40.0
- DESCRIPTION
- Core Enhancements
New
__CLASS__
Keyword:reader
attribute for field variablesPermit a space in
-M
command-line optionRestrictions to
use VERSION
declarationsNew
builtin::inf
andbuiltin::nan
functions (experimental)New
^^
logical xor operatortry
/catch
feature is no longer experimentalfor
iterating over multiple values at a time is no longer experimentalbuiltin
module is no longer experimentalThe
:5.40
feature bundle addstry
use v5.40;
imports builtin functions- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
- Incompatible Changes
reset EXPR now calls set-magic on scalars
Calling the import method of an unknown package produces a warning
return
no longer allows an indirect objectClass barewords no longer resolved as file handles in method calls under
no feature "bareword_filehandles"
- Deprecations
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- New Platforms
Serenity OS
- Platform-Specific Notes
Windows, Linux, MacOS/Darwin, VMS, Oracle Developer Studio (Solaris, Oracle Linux)
- Internal Changes
- Selected Bug Fixes
- Known Problems
perlivp is missing streamzip on Windows
Errata From Previous Releases
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5400delta, perldelta - what is new for perl v5.40.0
- DESCRIPTION
- Core Enhancements
New
__CLASS__
Keyword:reader
attribute for field variablesPermit a space in
-M
command-line optionRestrictions to
use VERSION
declarationsNew
builtin::inf
andbuiltin::nan
functions (experimental)New
^^
logical xor operatortry
/catch
feature is no longer experimentalfor
iterating over multiple values at a time is no longer experimentalbuiltin
module is no longer experimentalThe
:5.40
feature bundle addstry
use v5.40;
imports builtin functions- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
- Incompatible Changes
reset EXPR now calls set-magic on scalars
Calling the import method of an unknown package produces a warning
return
no longer allows an indirect objectClass barewords no longer resolved as file handles in method calls under
no feature "bareword_filehandles"
- Deprecations
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- New Platforms
Serenity OS
- Platform-Specific Notes
Windows, Linux, MacOS/Darwin, VMS, Oracle Developer Studio (Solaris, Oracle Linux)
- Internal Changes
- Selected Bug Fixes
- Known Problems
perlivp is missing streamzip on Windows
Errata From Previous Releases
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5400delta, perldelta - what is new for perl v5.40.0
- DESCRIPTION
- Core Enhancements
New
__CLASS__
Keyword:reader
attribute for field variablesPermit a space in
-M
command-line optionRestrictions to
use VERSION
declarationsNew
builtin::inf
andbuiltin::nan
functions (experimental)New
^^
logical xor operatortry
/catch
feature is no longer experimentalfor
iterating over multiple values at a time is no longer experimentalbuiltin
module is no longer experimentalThe
:5.40
feature bundle addstry
use v5.40;
imports builtin functions- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
- Incompatible Changes
reset EXPR now calls set-magic on scalars
Calling the import method of an unknown package produces a warning
return
no longer allows an indirect objectClass barewords no longer resolved as file handles in method calls under
no feature "bareword_filehandles"
- Deprecations
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- New Platforms
Serenity OS
- Platform-Specific Notes
Windows, Linux, MacOS/Darwin, VMS, Oracle Developer Studio (Solaris, Oracle Linux)
- Internal Changes
- Selected Bug Fixes
- Known Problems
perlivp is missing streamzip on Windows
Errata From Previous Releases
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5382delta - what is new for perl v5.38.2
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5381delta - what is new for perl v5.38.1
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5380delta - what is new for perl v5.38.0
- DESCRIPTION
- Core Enhancements
New
class
FeatureUnicode 15.0 is supported
Deprecation warnings now have specific subcategories
%{^HOOK} API introduced
PERL_RAND_SEED
Defined-or and logical-or assignment default expressions in signatures
@INC
Hook Enhancements and$INC
and INCDIRForbidden control flow out of
defer
orfinally
now detected at compile-timeOptimistic Eval in Patterns
REG_INF has been raised from 65,536 to 2,147,483,647
New API functions optimize_optree and finalize_optree
Some
goto
s are now permitted indefer
andfinally
blocksNew regexp variable ${^LAST_SUCCESSFUL_PATTERN}
Locale category LC_NAME now supported on participating platforms
- Incompatible Changes
readline() no longer clears the stream error and eof flags
INIT
blocks no longer run after anexit()
inBEGIN
Syntax errors no longer produce "phantom error messages"
utf8::upgrade()
Changes to "thread-safe" locales
- Deprecations
Use of
'
as a package name separator is deprecatedSwitch and Smart Match operator
- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- Discontinued Platforms
Ultrix
- Platform-Specific Notes
DragonflyBSD, FreeBSD, Solaris, Synology, Windows
- Internal Changes
newSVbool(const bool bool_val)
,newSV_true()
,newSV_false()
,sv_set_true(SV *sv)
,sv_set_false(SV *sv)
,sv_set_bool(SV *sv, const bool bool_val)
,SvIandPOK(sv)
,SvIandPOK_off(sv)
,SvIandPOK_on
, I32df -- Like%d
, U32of -- Like%o
, U32uf -- Like%u
, U32xf -- Like%x
, U32Xf -- Like%X
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5363delta - what is new for perl v5.36.3
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5362delta - what is new for perl v5.36.2
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5361delta - what is new for perl v5.36.1
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
Configuration and Compilation
Testing
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5360delta - what is new for perl v5.36.0
- DESCRIPTION
- Core Enhancements
- use v5.36
- -g command-line flag
- Unicode 14.0 is supported
- regex sets are no longer considered experimental
- Variable length lookbehind is mostly no longer considered experimental
- SIGFPE no longer deferred
- Stable boolean tracking
- iterating over multiple values at a time (experimental)
- builtin functions (experimental)
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
defer
blocks (experimental)try/catch can now have a
finally
block (experimental)non-ASCII delimiters for quote-like operators (experimental)
@_
is now experimental within signatured subs- Incompatible Changes
A physically empty sort is now a compile-time error
- Deprecations
use VERSION
(where VERSION is below v5.11) afteruse v5.11
is deprecated- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- Windows
- VMS
keys %ENV
on VMS returns consistent results- Discontinued Platforms
AT&T UWIN, DOS/DJGPP, NetWare
- Platform-Specific Notes
z/OS
Internal Changes
Selected Bug Fixes
Errata From Previous Releases
Obituaries
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5343delta - what is new for perl v5.34.3
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5342delta - what is new for perl v5.34.2
- DESCRIPTION
- Security
CVE-2023-47038 - Write past buffer end via illegal user-defined Unicode property
CVE-2023-47039 - Perl for Windows binary hijacking vulnerability
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5341delta - what is new for perl v5.34.1
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Testing
- Platform-Specific Notes
Windows
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5340delta - what is new for perl v5.34.0
- DESCRIPTION
- Core Enhancements
Experimental Try/Catch Syntax
qr/{,n}/
is now accepted- Blanks freely allowed within but adjacent to curly braces
- New octal syntax 0oddddd
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
- perl5db.pl (the debugger)
New option:
HistItemMinLength
, Fix toi
andl
commands
- Configuration and Compilation
stadtx hash support has been removed, Configure,
-Dusedefaultstrict
- Testing
- Platform Support
- New Platforms
9front
- Updated Platforms
Plan9, MacOS (Darwin)
- Discontinued Platforms
Symbian
- Platform-Specific Notes
DragonFlyBSD, Mac OS X, Windows, z/OS
- Internal Changes
- Selected Bug Fixes
pack/unpack format 'D' now works on all systems that could support it
Known Problems
Errata From Previous Releases
Obituary
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5321delta - what is new for perl v5.32.1
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- Platform-Specific Notes
MacOS (Darwin), Minix
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5320delta - what is new for perl v5.32.0
- DESCRIPTION
- Core Enhancements
The isa Operator
Unicode 13.0 is supported
Chained comparisons capability
New Unicode properties
Identifier_Status
andIdentifier_Type
supportedIt is now possible to write
qr/\p{Name=...}/
, orqr!\p{na=/(SMILING|GRINNING) FACE/}!
Improvement of
POSIX::mblen()
,mbtowc
, andwctomb
Alpha assertions are no longer experimental
Script runs are no longer experimental
Feature checks are now faster
Perl is now developed on GitHub
Compiled patterns can now be dumped before optimization
- Security
[CVE-2020-10543] Buffer overflow caused by a crafted regular expression
[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression
[CVE-2020-12723] Buffer overflow caused by a crafted regular expression
Additional Note
- Incompatible Changes
Certain pattern matching features are now prohibited in compiling Unicode property value wildcard subpatterns
Unused functions
POSIX::mbstowcs
andPOSIX::wcstombs
are removedA bug fix for
(?[...])
may have caused some patterns to no longer compile\p{user-defined}
properties now always override official Unicode onesModifiable variables are no longer permitted in constants
Use of
vec
on strings with code points above 0xFF is forbiddenUse of code points over 0xFF in string bitwise operators
Sys::Hostname::hostname()
does not accept argumentsPlain "0" string now treated as a number for range operator
\K
now disallowed in look-ahead and look-behind assertions- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
- Changes to Existing Documentation
caller
,__FILE__
,__LINE__
,return
,open
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
- perlbug
The bug tracker homepage URL now points to GitHub
streamzip
- Configuration and Compilation
Configure
- Testing
- Platform Support
- Discontinued Platforms
Windows CE
- Platform-Specific Notes
Linux, NetBSD 8.0, Windows, Solaris, VMS, z/OS
Internal Changes
Selected Bug Fixes
Obituary
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5303delta - what is new for perl v5.30.3
- DESCRIPTION
- Security
[CVE-2020-10543] Buffer overflow caused by a crafted regular expression
[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression
[CVE-2020-12723] Buffer overflow caused by a crafted regular expression
Additional Note
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
Testing
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5302delta - what is new for perl v5.30.2
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Configuration and Compilation
- Testing
- Platform Support
- Platform-Specific Notes
Windows
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5301delta - what is new for perl v5.30.1
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Configuration and Compilation
- Testing
- Platform Support
- Platform-Specific Notes
Win32
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5300delta - what is new for perl v5.30.0
- DESCRIPTION
- Notice
- Core Enhancements
Limited variable length lookbehind in regular expression pattern matching is now experimentally supported
The upper limit
"n"
specifiable in a regular expression quantifier of the form"{m,n}"
has been doubled to 65534Unicode 12.1 is supported
Wildcards in Unicode property value specifications are now partially supported
qr'\N{name}' is now supported
Turkic UTF-8 locales are now seamlessly supported
It is now possible to compile perl to always use thread-safe locale operations
Eliminate opASSIGN macro usage from core
-Drv
now means something on-DDEBUGGING
builds- Incompatible Changes
Assigning non-zero to
$[
is fatalDelimiters must now be graphemes
Some formerly deprecated uses of an unescaped left brace
"{"
in regular expression patterns are now illegalPreviously deprecated sysread()/syswrite() on :utf8 handles is now fatal
my() in false conditional prohibited
Fatalize $* and $#
Fatalize unqualified use of dump()
Remove File::Glob::glob()
pack()
no longer can return malformed UTF-8Any set of digits in the Common script are legal in a script run of another script
JSON::PP enables allow_nonref by default
- Deprecations
In XS code, use of various macros dealing with UTF-8
- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
Changes to Existing Diagnostics
- Utility Changes
xsubpp
- Configuration and Compilation
- Testing
- Platform Support
- Platform-Specific Notes
HP-UX 11.11, Mac OS X, Minix3, Cygwin, Win32 Mingw, Windows
Internal Changes
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5283delta - what is new for perl v5.28.3
- DESCRIPTION
- Security
[CVE-2020-10543] Buffer overflow caused by a crafted regular expression
[CVE-2020-10878] Integer overflow via malformed bytecode produced by a crafted regular expression
[CVE-2020-12723] Buffer overflow caused by a crafted regular expression
Additional Note
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
Testing
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5282delta - what is new for perl v5.28.2
- DESCRIPTION
- Incompatible Changes
Any set of digits in the Common script are legal in a script run of another script
- Modules and Pragmata
Updated Modules and Pragmata
- Platform Support
- Platform-Specific Notes
Windows, Mac OS X
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5281delta - what is new for perl v5.28.1
- DESCRIPTION
- Security
[CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault
[CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5280delta - what is new for perl v5.28.0
- DESCRIPTION
- Core Enhancements
Unicode 10.0 is supported
delete
on key/value hash slicesExperimentally, there are now alphabetic synonyms for some regular expression assertions
Mixed Unicode scripts are now detectable
In-place editing with
perl -i
is now saferInitialisation of aggregate state variables
Full-size inode numbers
The
sprintf %j
format size modifier is now available with pre-C99 compilersClose-on-exec flag set atomically
String- and number-specific bitwise ops are no longer experimental
Locales are now thread-safe on systems that support them
New read-only predefined variable
${^SAFE_LOCALES}
- Security
[CVE-2017-12837] Heap buffer overflow in regular expression compiler
[CVE-2017-12883] Buffer over-read in regular expression parser
[CVE-2017-12814]
$ENV{$key}
stack buffer overflow on WindowsDefault Hash Function Change
- Incompatible Changes
Subroutine attribute and signature order
Comma-less variable lists in formats are no longer allowed
The
:locked
and:unique
attributes have been removed\N{}
with nothing between the braces is now illegalOpening the same symbol as both a file and directory handle is no longer allowed
Use of bare
<<
to mean<<""
is no longer allowedSetting $/ to a reference to a non-positive integer no longer allowed
Unicode code points with values exceeding
IV_MAX
are now fatalThe
B::OP::terse
method has been removedUse of inherited AUTOLOAD for non-methods is no longer allowed
Use of strings with code points over 0xFF is not allowed for bitwise string operators
Setting
${^ENCODING}
to a defined value is now illegalBackslash no longer escapes colon in PATH for the
-S
switchthe -DH (DEBUG_H) misfeature has been removed
Yada-yada is now strictly a statement
Sort algorithm can no longer be specified
Over-radix digits in floating point literals
Return type of
unpackstring()
- Deprecations
- Use of vec on strings with code points above 0xFF is deprecated
- Some uses of unescaped "{" in regexes are no longer fatal
- Use of unescaped "{" immediately after a "(" in regular expression patterns is deprecated
- Assignment to $[ will be fatal in Perl 5.30
- hostname() won't accept arguments in Perl 5.32
- Module removals
B::Debug, Locale::Codes and its associated Country, Currency and Language modules
- Performance Enhancements
- Modules and Pragmata
Removal of use vars
Use of DynaLoader changed to XSLoader in many modules
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
- Changes to Existing Documentation
"Variable length lookbehind not implemented in regex m/%s/" in perldiag, "Use of state
$_
is experimental" in perldiag
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
perlbug
- Configuration and Compilation
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
- Testing
- Packaging
- Platform Support
- Discontinued Platforms
PowerUX / Power MAX OS
- Platform-Specific Notes
CentOS, Cygwin, Darwin, FreeBSD, VMS, Windows
Internal Changes
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5263delta - what is new for perl v5.26.3
- DESCRIPTION
- Security
[CVE-2018-12015] Directory traversal in module Archive::Tar
[CVE-2018-18311] Integer overflow leading to buffer overflow and segmentation fault
[CVE-2018-18312] Heap-buffer-overflow write in S_regatom (regcomp.c)
[CVE-2018-18313] Heap-buffer-overflow read in S_grok_bslash_N (regcomp.c)
[CVE-2018-18314] Heap-buffer-overflow write in S_regatom (regcomp.c)
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5262delta - what is new for perl v5.26.2
- DESCRIPTION
- Security
[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)
[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)
[CVE-2018-6913] heap-buffer-overflow in S_pack_rec
Assertion failure in Perl__core_swash_init (utf8.c)
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Platform Support
- Platform-Specific Notes
Windows
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5261delta - what is new for perl v5.26.1
- DESCRIPTION
- Security
[CVE-2017-12837] Heap buffer overflow in regular expression compiler
[CVE-2017-12883] Buffer over-read in regular expression parser
[CVE-2017-12814]
$ENV{$key}
stack buffer overflow on Windows- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Platform Support
- Platform-Specific Notes
FreeBSD, Windows
Selected Bug Fixes
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5260delta - what is new for perl v5.26.0
- DESCRIPTION
- Notice
"."
no longer in@INC
,do
may now warn, In regular expression patterns, a literal left brace"{"
should be escaped- Core Enhancements
Lexical subroutines are no longer experimental
Indented Here-documents
New regular expression modifier
/xx
@{^CAPTURE}
,%{^CAPTURE}
, and%{^CAPTURE_ALL}
Declaring a reference to a variable
Unicode 9.0 is now supported
Use of
\p{script}
uses the improved Script_Extensions propertyPerl can now do default collation in UTF-8 locales on platforms that support it
Better locale collation of strings containing embedded
NUL
charactersCORE
subroutines for hash and array functions callable via referenceNew Hash Function For 64-bit Builds
- Security
- Removal of the current directory (".") from @INC
Configure -Udefault_inc_excludes_dot,
PERL_USE_UNSAFE_INC
, A new deprecation warning issued bydo
, Script authors, Installing and using CPAN modules, Module Authors
Escaped colons and relative paths in PATH
New
-Di
switch is now required for PerlIO debugging output- Incompatible Changes
Unescaped literal
"{"
characters in regular expression patterns are no longer permissiblescalar(%hash)
return signature changedkeys
returned from an lvalue subroutineThe
${^ENCODING}
facility has been removedPOSIX::tmpnam()
has been removedrequire ::Foo::Bar is now illegal
Literal control character variable names are no longer permissible
NBSP
is no longer permissible in\N{...}
- Deprecations
String delimiters that aren't stand-alone graphemes are now deprecated
\cX
that maps to a printable is no longer deprecated- Performance Enhancements
New Faster Hash Function on 64 bit builds, readline is faster
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
c2ph and pstruct
Porting/pod_lib.pl
Porting/sync-with-cpan
perf/benchmarks
Porting/checkAUTHORS.pl
t/porting/regen.t
utils/h2xs.PL
perlbug
- Configuration and Compilation
- Testing
- Platform Support
- New Platforms
NetBSD/VAX
- Platform-Specific Notes
Darwin, EBCDIC, HP-UX, Hurd, VAX, VMS, Windows, Linux, OpenBSD 6, FreeBSD, DragonFly BSD
Internal Changes
Selected Bug Fixes
Known Problems
Errata From Previous Releases
Obituary
Acknowledgements
Reporting Bugs
Give Thanks
SEE ALSO
perl5244delta - what is new for perl v5.24.4
- DESCRIPTION
- Security
[CVE-2018-6797] heap-buffer-overflow (WRITE of size 1) in S_regatom (regcomp.c)
[CVE-2018-6798] Heap-buffer-overflow in Perl__byte_dump_string (utf8.c)
[CVE-2018-6913] heap-buffer-overflow in S_pack_rec
Assertion failure in Perl__core_swash_init (utf8.c)
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5243delta - what is new for perl v5.24.3
- DESCRIPTION
- Security
[CVE-2017-12837] Heap buffer overflow in regular expression compiler
[CVE-2017-12883] Buffer over-read in regular expression parser
[CVE-2017-12814]
$ENV{$key}
stack buffer overflow on Windows- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Configuration and Compilation
- Platform Support
- Platform-Specific Notes
VMS, Windows
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5242delta - what is new for perl v5.24.2
- DESCRIPTION
- Security
Improved handling of '.' in
@INC
in base.pm"Escaped" colons and relative paths in PATH
- Modules and Pragmata
Updated Modules and Pragmata
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5241delta - what is new for perl v5.24.1
- DESCRIPTION
- Security
-Di switch is now required for PerlIO debugging output
Core modules and tools no longer search "." for optional modules
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
Testing
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5240delta - what is new for perl v5.24.0
- DESCRIPTION
- Core Enhancements
Postfix dereferencing is no longer experimental
Unicode 8.0 is now supported
perl will now croak when closing an in-place output file fails
New
\b{lb}
boundary in regular expressionsqr/(?[ ])/
now works in UTF-8 localesInteger shift (
<<
and>>
) now more explicitly definedprintf and sprintf now allow reordered precision arguments
More fields provided to
sigaction
callback withSA_SIGINFO
Hashbang redirection to Perl 6
- Security
Set proper umask before calling
mkstemp(3)
Fix out of boundary access in Win32 path handling
Fix loss of taint in canonpath
Avoid accessing uninitialized memory in win32
crypt()
Remove duplicate environment variables from
environ
- Incompatible Changes
The
autoderef
feature has been removedLexical
$_
has been removedqr/\b{wb}/
is now tailored to Perl expectationsRegular expression compilation errors
qr/\N{}/
now disallowed underuse re "strict"
Nested declarations are now disallowed
The
/\C/
character class has been removedchdir('')
no longer chdirs homeASCII characters in variable names must now be all visible
An off by one issue in
$Carp::MaxArgNums
has been fixedOnly blanks and tabs are now allowed within
[...]
within(?[...])
- Deprecations
Using code points above the platform's
IV_MAX
is now deprecatedDoing bitwise operations on strings containing code points above 0xFF is deprecated
sysread()
,syswrite()
,recv()
andsend()
are deprecated on :utf8 handles- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Testing
- Platform Support
- Platform-Specific Notes
AmigaOS, Cygwin, EBCDIC, UTF-EBCDIC extended, EBCDIC
cmp()
andsort()
fixed for UTF-EBCDIC strings, EBCDICtr///
andy///
fixed for\N{}
, anduse utf8
ranges, FreeBSD, IRIX, MacOS X, Solaris, Tru64, VMS, Win32, ppc64el, floating point
Internal Changes
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5224delta - what is new for perl v5.22.4
- DESCRIPTION
- Security
Improved handling of '.' in
@INC
in base.pm"Escaped" colons and relative paths in PATH
- Modules and Pragmata
Updated Modules and Pragmata
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5223delta - what is new for perl v5.22.3
- DESCRIPTION
- Security
-Di switch is now required for PerlIO debugging output
Core modules and tools no longer search "." for optional modules
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
Testing
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5222delta - what is new for perl v5.22.2
- DESCRIPTION
- Security
Fix out of boundary access in Win32 path handling
Fix loss of taint in
canonpath()
Set proper umask before calling
mkstemp(3)
Avoid accessing uninitialized memory in Win32
crypt()
Remove duplicate environment variables from
environ
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Configuration and Compilation
- Platform Support
- Platform-Specific Notes
Darwin, OS X/Darwin, ppc64el, Tru64
Internal Changes
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5221delta - what is new for perl v5.22.1
- DESCRIPTION
- Incompatible Changes
Bounds Checking Constructs
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Platform Support
- Platform-Specific Notes
IRIX
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5220delta - what is new for perl v5.22.0
- DESCRIPTION
- Core Enhancements
New bitwise operators
New double-diamond operator
New
\b
boundaries in regular expressionsNon-Capturing Regular Expression Flag
use re 'strict'
Unicode 7.0 (with correction) is now supported
use locale
can restrict which locale categories are affectedPerl now supports POSIX 2008 locale currency additions
Better heuristics on older platforms for determining locale UTF-8ness
Aliasing via reference
prototype
with no argumentsNew
:const
subroutine attributefileno
now works on directory handlesList form of pipe open implemented for Win32
Assignment to list repetition
Infinity and NaN (not-a-number) handling improved
Floating point parsing has been improved
Packing infinity or not-a-number into a character is now fatal
Experimental C Backtrace API
- Security
Perl is now compiled with
-fstack-protector-strong
if availableThe Safe module could allow outside packages to be replaced
Perl is now always compiled with
-D_FORTIFY_SOURCE=2
if available- Incompatible Changes
Subroutine signatures moved before attributes
&
and\&
prototypes accepts only subsuse encoding
is now lexicalList slices returning empty lists
\N{}
with a sequence of multiple spaces is now a fatal erroruse UNIVERSAL '...'
is now a fatal errorIn double-quotish
\cX
, X must now be a printable ASCII characterSplitting the tokens
(?
and(*
in regular expressions is now a fatal compilation errorqr/foo/x
now ignores all Unicode pattern white spaceComment lines within
(?[ ])
are now ended only by a\n
(?[...])
operators now follow standard Perl precedenceOmitting
%
and@
on hash and array names is no longer permitted"$!"
text is now in English outside the scope ofuse locale
"$!"
text will be returned in UTF-8 when appropriateSupport for
?PATTERN?
without explicit operator has been removeddefined(@array)
anddefined(%hash)
are now fatal errorsUsing a hash or an array as a reference are now fatal errors
Changes to the
*
prototype- Deprecations
Setting
${^ENCODING}
to anything butundef
Use of non-graphic characters in single-character variable names
Inlining of
sub () { $var }
with observable side-effectsUse of multiple
/x
regexp modifiersUsing a NO-BREAK space in a character alias for
\N{...}
is now deprecatedA literal
"{"
should now be escaped in a patternMaking all warnings fatal is discouraged
- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
Diagnostic Removals
- Utility Changes
find2perl, s2p and a2p removal
h2ph
encguess
- Configuration and Compilation
- Testing
- Platform Support
- Regained Platforms
IRIX and Tru64 platforms are working again, z/OS running EBCDIC Code Page 1047
- Discontinued Platforms
NeXTSTEP/OPENSTEP
- Platform-Specific Notes
EBCDIC, HP-UX, Android, VMS, Win32, OpenBSD, Solaris
Internal Changes
Selected Bug Fixes
Known Problems
Obituary
Acknowledgements
Reporting Bugs
SEE ALSO
perl5203delta - what is new for perl v5.20.3
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Utility Changes
h2ph
- Testing
- Platform Support
- Platform-Specific Notes
Win32
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5202delta - what is new for perl v5.20.2
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
Changes to Existing Diagnostics
- Testing
- Platform Support
Regained Platforms
Selected Bug Fixes
Known Problems
Errata From Previous Releases
Acknowledgements
Reporting Bugs
SEE ALSO
perl5201delta - what is new for perl v5.20.1
- DESCRIPTION
- Incompatible Changes
- Performance Enhancements
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
- Diagnostics
Changes to Existing Diagnostics
- Configuration and Compilation
- Platform Support
- Platform-Specific Notes
Android, OpenBSD, Solaris, VMS, Windows
Internal Changes
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5200delta - what is new for perl v5.20.0
- DESCRIPTION
- Core Enhancements
Experimental Subroutine signatures
sub
s now take aprototype
attributeMore consistent prototype parsing
rand
now uses a consistent random number generatorNew slice syntax
Experimental Postfix Dereferencing
Unicode 6.3 now supported
New
\p{Unicode}
regular expression pattern propertyBetter 64-bit support
use locale
now works on UTF-8 localesuse locale
now compiles on systems without locale abilityMore locale initialization fallback options
-DL
runtime option now added for tracing locale setting-F now implies -a and -a implies -n
$a
and$b
warnings exemption- Security
Avoid possible read of free()d memory during parsing
- Incompatible Changes
do
can no longer be used to call subroutinesQuote-like escape changes
Tainting happens under more circumstances; now conforms to documentation
\p{}
,\P{}
matching has changed for non-Unicode code points.\p{All}
has been expanded to match all possible code pointsData::Dumper's output may change
Locale decimal point character no longer leaks outside of
use locale
scopeAssignments of Windows sockets error codes to $! now prefer errno.h values over WSAGetLastError() values
Functions
PerlIO_vsprintf
andPerlIO_sprintf
have been removed- Deprecations
- The /\C/ character class
- Literal control characters in variable names
- References to non-integers and non-positive integers in $/
- Character matching routines in POSIX
- Interpreter-based threads are now discouraged
- Module removals
CGI and its associated CGI:: packages, inc::latest, Package::Constants, Module::Build and its associated Module::Build:: packages
- Utility removals
find2perl, s2p, a2p
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
- Configuration and Compilation
- Testing
- Platform Support
- New Platforms
Android, Bitrig, FreeMiNT, Synology
- Discontinued Platforms
sfio
, AT&T 3b1, DG/UX, EBCDIC- Platform-Specific Notes
Cygwin, GNU/Hurd, Linux, Mac OS, MidnightBSD, Mixed-endian platforms, VMS, Win32, WinCE
- Internal Changes
- Selected Bug Fixes
Regular Expressions
Perl 5 Debugger and -d
Lexical Subroutines
Everything Else
Known Problems
Obituary
Acknowledgements
Reporting Bugs
SEE ALSO
perl5184delta - what is new for perl v5.18.4
- DESCRIPTION
- Modules and Pragmata
Updated Modules and Pragmata
- Platform Support
- Platform-Specific Notes
Win32
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5182delta - what is new for perl v5.18.2
- DESCRIPTION
- Modules and Pragmata
Updated Modules and Pragmata
- Documentation
Changes to Existing Documentation
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5181delta - what is new for perl v5.18.1
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Platform Support
- Platform-Specific Notes
AIX, MidnightBSD
Selected Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5180delta - what is new for perl v5.18.0
- DESCRIPTION
- Core Enhancements
New mechanism for experimental features
Hash overhaul
Upgrade to Unicode 6.2
Character name aliases may now include non-Latin1-range characters
New DTrace probes
${^LAST_FH}
Regular Expression Set Operations
Lexical subroutines
Computed Labels
More CORE:: subs
kill
with negative signal names- Security
See also: hash overhaul
Storable
security warning in documentationLocale::Maketext
allowed code injection via a malicious templateAvoid calling memset with a negative count
- Incompatible Changes
See also: hash overhaul
An unknown character name in
\N{...}
is now a syntax errorFormerly deprecated characters in
\N{}
character name aliases are now errors\N{BELL}
now refers to U+1F514 instead of U+0007New Restrictions in Multi-Character Case-Insensitive Matching in Regular Expression Bracketed Character Classes
Explicit rules for variable names and identifiers
Vertical tabs are now whitespace
/(?{})/
and/(??{})/
have been heavily reworkedStricter parsing of substitution replacement
given
now aliases the global$_
The smartmatch family of features are now experimental
Lexical
$_
is now experimentalreadline() with
$/ = \N
now reads N characters, not N bytesOverridden
glob
is now passed one argumentHere doc parsing
Alphanumeric operators must now be separated from the closing delimiter of regular expressions
qw(...) can no longer be used as parentheses
Interaction of lexical and default warnings
state sub
andour sub
Defined values stored in environment are forced to byte strings
require
dies for unreadable filesgv_fetchmeth_*
and SUPERsplit
's first argument is more consistently interpreted- Deprecations
- Module removals
encoding, Archive::Extract, B::Lint, B::Lint::Debug, CPANPLUS and all included
CPANPLUS::*
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- Deprecated Utilities
cpanp,
cpanp-run-perl
, cpan2dist, pod2latex
PL_sv_objcount
Five additional characters should be escaped in patterns with
/x
User-defined charnames with surprising whitespace
Various XS-callable functions are now deprecated
Certain rare uses of backslashes within regexes are now deprecated
Splitting the tokens
(?
and(*
in regular expressionsPre-PerlIO IO implementations
- Future Deprecations
DG/UX, NeXT
- Performance Enhancements
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
Changes to Existing Documentation
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
- Configuration and Compilation
- Testing
- Platform Support
- Discontinued Platforms
BeOS, UTS Global, VM/ESA, MPE/IX, EPOC, Rhapsody
Platform-Specific Notes
Internal Changes
Selected Bug Fixes
Known Problems
Obituary
Acknowledgements
Reporting Bugs
SEE ALSO
perl5163delta - what is new for perl v5.16.3
- DESCRIPTION
- Core Enhancements
- Security
CVE-2013-1667: memory exhaustion with arbitrary hash keys
wrap-around with IO on long strings
memory leak in Encode
- Incompatible Changes
- Deprecations
- Modules and Pragmata
Updated Modules and Pragmata
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5162delta - what is new for perl v5.16.2
- DESCRIPTION
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Configuration and Compilation
configuration should no longer be confused by ls colorization
- Platform Support
- Platform-Specific Notes
AIX
- Selected Bug Fixes
fix /\h/ equivalence with /[\h]/
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5161delta - what is new for perl v5.16.1
- DESCRIPTION
- Security
an off-by-two error in Scalar-List-Util has been fixed
- Incompatible Changes
- Modules and Pragmata
Updated Modules and Pragmata
- Configuration and Compilation
- Platform Support
- Platform-Specific Notes
VMS
Selected Bug Fixes
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5160delta - what is new for perl v5.16.0
- DESCRIPTION
- Notice
- Core Enhancements
use VERSION
__SUB__
New and Improved Built-ins
Unicode Support
XS Changes
Changes to Special Variables
Debugger Changes
The
CORE
NamespaceOther Changes
- Security
Use
is_utf8_char_buf()
and notis_utf8_char()
Malformed UTF-8 input could cause attempts to read beyond the end of the buffer
File::Glob::bsd_glob()
memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)Privileges are now set correctly when assigning to
$(
- Deprecations
Don't read the Unicode data base files in lib/unicore
XS functions
is_utf8_char()
,utf8_to_uvchr()
andutf8_to_uvuni()
- Future Deprecations
Core Modules
Platforms with no supporting programmers
Other Future Deprecations
- Incompatible Changes
Special blocks called in void context
The
overloading
pragma and regexp objectsTwo XS typemap Entries removed
Unicode 6.1 has incompatibilities with Unicode 6.0
Borland compiler
Certain deprecated Unicode properties are no longer supported by default
Dereferencing IO thingies as typeglobs
User-defined case-changing operations
XSUBs are now 'static'
Weakening read-only references
Tying scalars that hold typeglobs
IPC::Open3 no longer provides
xfork()
,xclose_on_exec()
andxpipe_anon()
$$
no longer caches PID$$
andgetppid()
no longer emulate POSIX semantics under LinuxThreads$<
,$>
,$(
and$)
are no longer cachedWhich Non-ASCII characters get quoted by
quotemeta
and\Q
has changed- Performance Enhancements
- Modules and Pragmata
- Deprecated Modules
Version::Requirements
New Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
Removed Documentation
- Diagnostics
New Diagnostics
Removed Errors
Changes to Existing Diagnostics
- Utility Changes
- Configuration and Compilation
- Platform Support
Platform-Specific Notes
- Internal Changes
- Selected Bug Fixes
Array and hash
C API fixes
Compile-time hints
Copy-on-write scalars
The debugger
Dereferencing operators
Filehandle, last-accessed
Filetests and
stat
Formats
given
andwhen
The
glob
operatorLvalue subroutines
Overloading
Prototypes of built-in keywords
Regular expressions
Smartmatching
The
sort
operatorThe
substr
operatorSupport for embedded nulls
Threading bugs
Tied variables
Version objects and vstrings
Warnings, redefinition
Warnings, "Uninitialized"
Weak references
Other notable fixes
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5144delta - what is new for perl v5.14.4
- DESCRIPTION
- Core Enhancements
- Security
CVE-2013-1667: memory exhaustion with arbitrary hash keys
memory leak in Encode
[perl #111594] Socket::unpack_sockaddr_un heap-buffer-overflow
[perl #111586] SDBM_File: fix off-by-one access to global ".dir"
off-by-two error in List::Util
[perl #115994] fix segv in regcomp.c:S_join_exact()
[perl #115992] PL_eval_start use-after-free
wrap-around with IO on long strings
- Incompatible Changes
- Deprecations
- Modules and Pragmata
- New Modules and Pragmata
- Updated Modules and Pragmata
Socket, SDBM_File, List::Util
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
- Utility Changes
- Configuration and Compilation
- Platform Support
- New Platforms
- Discontinued Platforms
- Platform-Specific Notes
VMS
Selected Bug Fixes
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5143delta - what is new for perl v5.14.3
- DESCRIPTION
- Core Enhancements
- Security
Digest
unsafe use of eval (CVE-2011-3597)Heap buffer overrun in 'x' string repeat operator (CVE-2012-5195)
- Incompatible Changes
- Deprecations
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Configuration and Compilation
- Platform Support
- New Platforms
- Discontinued Platforms
- Platform-Specific Notes
FreeBSD, Solaris and NetBSD, HP-UX, Linux, Mac OS X, GNU/Hurd, NetBSD
Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5142delta - what is new for perl v5.14.2
- DESCRIPTION
- Core Enhancements
- Security
File::Glob::bsd_glob()
memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)Encode
decode_xs n-byte heap-overflow (CVE-2011-2939)- Incompatible Changes
- Deprecations
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Platform Support
- New Platforms
- Discontinued Platforms
- Platform-Specific Notes
HP-UX PA-RISC/64 now supports gcc-4.x, Building on OS X 10.7 Lion and Xcode 4 works again
Bug Fixes
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5141delta - what is new for perl v5.14.1
- DESCRIPTION
- Core Enhancements
- Security
- Incompatible Changes
- Deprecations
- Modules and Pragmata
New Modules and Pragmata
Updated Modules and Pragmata
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
New Diagnostics
Changes to Existing Diagnostics
- Utility Changes
- Configuration and Compilation
- Testing
- Platform Support
New Platforms
Discontinued Platforms
Platform-Specific Notes
Internal Changes
Bug Fixes
Acknowledgements
Reporting Bugs
SEE ALSO
perl5140delta - what is new for perl v5.14.0
- DESCRIPTION
- Notice
- Core Enhancements
- Unicode
- Regular Expressions
- Syntactical Enhancements
- Exception Handling
- Other Enhancements
-d:-foo
,-d:-foo=bar
New C APIs
- Security
User-defined regular expression properties
- Incompatible Changes
Regular Expressions and String Escapes
Stashes and Package Variables
Changes to Syntax or to Perl Operators
Threads and Processes
Configuration
- Deprecations
- Omitting a space between a regular expression and subsequent word
- \cX
- "\b{" and "\B{"
- Perl 4-era .pl libraries
- List assignment to $[
- Use of qw(...) as parentheses
- \N{BELL}
- ?PATTERN?
- Tie functions on scalars holding typeglobs
- User-defined case-mapping
- Deprecated modules
Devel::DProf
- Performance Enhancements
"Safe signals" optimisation
Optimisation of shift() and pop() calls without arguments
Optimisation of regexp engine string comparison work
Regular expression compilation speed-up
String appending is 100 times faster
Eliminate
PL_*
accessor functions under ithreadsFreeing weak references
Lexical array and hash assignments
@_
uses less memorySize optimisations to SV and HV structures
Memory consumption improvements to Exporter
Memory savings for weak references
%+
and%-
use less memoryMultiple small improvements to threads
Adjacent pairs of nextstate opcodes are now optimized away
- Modules and Pragmata
- New Modules and Pragmata
- Updated Modules and Pragma
much less configuration dialog hassle, support for META/MYMETA.json, 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 bzip2(1), allow Foo/Bar.pm on the command line to mean
Foo::Bar
, charinfo(), charscript(), charblock()
Removed Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Diagnostics
- New Diagnostics
Closure prototype called, Insecure user-defined property
%s
, panic: gp_free failed to free glob pointer - something is repeatedly re-creating entries, Parsing code internal error (%s), refcnt: fd%d
%s, Regexp modifier "/%c" may not appear twice, Regexp modifiers "/%c" and "/%c" are mutually exclusive, Using !~ with%s
doesn't make sense, "\b{" is deprecated; use "\b\{" instead, "\B{" is deprecated; use "\B\{" instead, Operation "%s" returns its argument for .., Use of qw(...) as parentheses is deprecated
Changes to Existing Diagnostics
- Utility Changes
- Configuration and Compilation
- Platform Support
- New Platforms
AIX
- Discontinued Platforms
Apollo DomainOS, MacOS Classic
Platform-Specific Notes
- Internal Changes
- New APIs
- C API Changes
- Deprecated C APIs
Perl_ptr_table_clear
,sv_compile_2op
,find_rundefsvoffset
,CALL_FPTR
andCPERLscope
Other Internal Changes
- Selected Bug Fixes
- I/O
- Regular Expression Bug Fixes
- Syntax/Parsing Bugs
- Stashes, Globs and Method Lookup
Aliasing packages by assigning to globs [perl #77358], Deleting packages by deleting their containing stash elements, Undefining the glob containing a package (
undef *Foo::
), Undefining an ISA glob (undef *Foo::ISA
), Deleting an ISA stash element (delete $Foo::{ISA}
), Sharing@ISA
arrays between classes (via*Foo::ISA = \@Bar::ISA
or*Foo::ISA = *Bar::ISA
) [perl #77238]
Unicode
Ties, Overloading and Other Magic
The Debugger
Threads
Scoping and Subroutines
Signals
Miscellaneous Memory Leaks
Memory Corruption and Crashes
Fixes to Various Perl Operators
Bugs Relating to the C API
- Known Problems
- Errata
keys(), values(), and each() work on arrays
split() and
@_
Obituary
Acknowledgements
Reporting Bugs
SEE ALSO
perl5125delta - what is new for perl v5.12.5
- DESCRIPTION
- Security
Encode
decode_xs n-byte heap-overflow (CVE-2011-2939)File::Glob::bsd_glob()
memory error with GLOB_ALTDIRFUNC (CVE-2011-2728)Heap buffer overrun in 'x' string repeat operator (CVE-2012-5195)
- Incompatible Changes
- Modules and Pragmata
Updated Modules
- Changes to Existing Documentation
perlebcdic
perlunicode
perluniprops
- Installation and Configuration Improvements
- Platform Specific Changes
Mac OS X, NetBSD
- Selected Bug Fixes
- Errata
split() and
@_
Acknowledgements
Reporting Bugs
SEE ALSO
perl5124delta - what is new for perl v5.12.4
- DESCRIPTION
- Incompatible Changes
- Selected Bug Fixes
- Modules and Pragmata
- Testing
- Documentation
- Platform Specific Notes
Linux
Acknowledgements
Reporting Bugs
SEE ALSO
perl5123delta - what is new for perl v5.12.3
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
keys
,values
work on arrays- Bug Fixes
- Platform Specific Notes
Solaris, VMS, VOS
Acknowledgements
Reporting Bugs
SEE ALSO
perl5122delta - what is new for perl v5.12.2
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
- Modules and Pragmata
- New Modules and Pragmata
- Pragmata Changes
- Updated Modules
Carp
,CPANPLUS
,File::Glob
,File::Copy
,File::Spec
- Utility Changes
- Changes to Existing Documentation
- Installation and Configuration Improvements
Configuration improvements
Compilation improvements
- Selected Bug Fixes
- Platform Specific Notes
AIX
Windows
VMS
Acknowledgements
Reporting Bugs
SEE ALSO
perl5121delta - what is new for perl v5.12.1
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
- Modules and Pragmata
Pragmata Changes
Updated Modules
- Changes to Existing Documentation
- Testing
Testing Improvements
- Installation and Configuration Improvements
Configuration improvements
- Bug Fixes
- Platform Specific Notes
HP-UX
AIX
FreeBSD 7
VMS
Known Problems
Acknowledgements
Reporting Bugs
SEE ALSO
perl5120delta - what is new for perl v5.12.0
- DESCRIPTION
- Core Enhancements
New
package NAME VERSION
syntaxThe
...
operatorImplicit strictures
Unicode improvements
Y2038 compliance
qr overloading
Pluggable keywords
APIs for more internals
Overridable function lookup
A proper interface for pluggable Method Resolution Orders
\N
experimental regex escapeDTrace support
Support for
configure_requires
in CPAN module metadataeach
,keys
,values
are now more flexiblewhen
as a statement modifier$,
flexibility// in when clauses
Enabling warnings from your shell environment
delete local
New support for Abstract namespace sockets
32-bit limit on substr arguments removed
- Potentially Incompatible Changes
- Deprecations warn by default
- Version number formats
- @INC reorganization
- REGEXPs are now first class
- Switch statement changes
flip-flop operators, defined-or operator
Smart match changes
Other potentially incompatible changes
- Deprecations
suidperl, Use of
:=
to mean an empty attribute list,UNIVERSAL->import()
, Use of "goto" to jump into a construct, Custom character names in \N{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- Unicode overhaul
- Modules and Pragmata
- New Modules and Pragmata
autodie
,Compress::Raw::Bzip2
,overloading
,parent
,Parse::CPAN::Meta
,VMS::DCLsym
,VMS::Stdio
,XS::APItest::KeywordRPN
- Updated Pragmata
base
,bignum
,charnames
,constant
,diagnostics
,feature
,less
,lib
,mro
,overload
,threads
,threads::shared
,version
,warnings
- Updated Modules
Archive::Extract
,Archive::Tar
,Attribute::Handlers
,AutoLoader
,B::Concise
,B::Debug
,B::Deparse
,B::Lint
,CGI
,Class::ISA
,Compress::Raw::Zlib
,CPAN
,CPANPLUS
,CPANPLUS::Dist::Build
,Data::Dumper
,DB_File
,Devel::PPPort
,Digest
,Digest::MD5
,Digest::SHA
,Encode
,Exporter
,ExtUtils::CBuilder
,ExtUtils::Command
,ExtUtils::Constant
,ExtUtils::Install
,ExtUtils::MakeMaker
,ExtUtils::Manifest
,ExtUtils::ParseXS
,File::Fetch
,File::Path
,File::Temp
,Filter::Simple
,Filter::Util::Call
,Getopt::Long
,IO
,IO::Zlib
,IPC::Cmd
,IPC::SysV
,Locale::Maketext
,Locale::Maketext::Simple
,Log::Message
,Log::Message::Simple
,Math::BigInt
,Math::BigInt::FastCalc
,Math::BigRat
,Math::Complex
,Memoize
,MIME::Base64
,Module::Build
,Module::CoreList
,Module::Load
,Module::Load::Conditional
,Module::Loaded
,Module::Pluggable
,Net::Ping
,NEXT
,Object::Accessor
,Package::Constants
,PerlIO
,Pod::Parser
,Pod::Perldoc
,Pod::Plainer
,Pod::Simple
,Safe
,SelfLoader
,Storable
,Switch
,Sys::Syslog
,Term::ANSIColor
,Term::UI
,Test
,Test::Harness
,Test::Simple
,Text::Balanced
,Text::ParseWords
,Text::Soundex
,Thread::Queue
,Thread::Semaphore
,Tie::RefHash
,Time::HiRes
,Time::Local
,Time::Piece
,Unicode::Collate
,Unicode::Normalize
,Win32
,Win32API::File
,XSLoader
- Removed Modules and Pragmata
attrs
,CPAN::API::HOWTO
,CPAN::DeferedCode
,CPANPLUS::inc
,DCLsym
,ExtUtils::MakeMaker::bytes
,ExtUtils::MakeMaker::vmsish
,Stdio
,Test::Harness::Assert
,Test::Harness::Iterator
,Test::Harness::Point
,Test::Harness::Results
,Test::Harness::Straps
,Test::Harness::Util
,XSSymSet
Deprecated Modules and Pragmata
- Documentation
New Documentation
Changes to Existing Documentation
- Selected Performance Enhancements
- Installation and Configuration Improvements
- Internal Changes
- Testing
- Testing improvements
Parallel tests, Test harness flexibility, Test watchdog
New Tests
- New or Changed Diagnostics
- New Diagnostics
- Changed Diagnostics
Illegal character in prototype for %s : %s
,Prototype after '%c' for %s : %s
- Utility Changes
- Selected Bug Fixes
- Platform Specific Changes
- New Platforms
Haiku, MirOS BSD
- Discontinued Platforms
Domain/OS, MiNT, Tenon MachTen
- Updated Platforms
AIX, Cygwin, Darwin (Mac OS X), DragonFly BSD, FreeBSD, Irix, NetBSD, OpenVMS, Stratus VOS, Symbian, Windows
Known Problems
Errata
Acknowledgements
Reporting Bugs
SEE ALSO
perl5101delta - what is new for perl v5.10.1
- DESCRIPTION
- Incompatible Changes
- Switch statement changes
flip-flop operators, defined-or operator
Smart match changes
Other incompatible changes
- Core Enhancements
Unicode Character Database 5.1.0
A proper interface for pluggable Method Resolution Orders
The
overloading
pragmaParallel tests
DTrace support
Support for
configure_requires
in CPAN module metadata- Modules and Pragmata
- New Modules and Pragmata
autodie
,Compress::Raw::Bzip2
,parent
,Parse::CPAN::Meta
- Pragmata Changes
attributes
,attrs
,base
,bigint
,bignum
,bigrat
,charnames
,constant
,feature
,fields
,lib
,open
,overload
,overloading
,version
- Updated Modules
Archive::Extract
,Archive::Tar
,Attribute::Handlers
,AutoLoader
,AutoSplit
,B
,B::Debug
,B::Deparse
,B::Lint
,B::Xref
,Benchmark
,Carp
,CGI
,Compress::Zlib
,CPAN
,CPANPLUS
,CPANPLUS::Dist::Build
,Cwd
,Data::Dumper
,DB
,DB_File
,Devel::PPPort
,Digest::MD5
,Digest::SHA
,DirHandle
,Dumpvalue
,DynaLoader
,Encode
,Errno
,Exporter
,ExtUtils::CBuilder
,ExtUtils::Command
,ExtUtils::Constant
,ExtUtils::Embed
,ExtUtils::Install
,ExtUtils::MakeMaker
,ExtUtils::Manifest
,ExtUtils::ParseXS
,Fatal
,File::Basename
,File::Compare
,File::Copy
,File::Fetch
,File::Find
,File::Path
,File::Spec
,File::stat
,File::Temp
,FileCache
,FileHandle
,Filter::Simple
,Filter::Util::Call
,FindBin
,GDBM_File
,Getopt::Long
,Hash::Util::FieldHash
,I18N::Collate
,IO
,IO::Compress::*
,IO::Dir
,IO::Handle
,IO::Socket
,IO::Zlib
,IPC::Cmd
,IPC::Open3
,IPC::SysV
,lib
,List::Util
,Locale::MakeText
,Log::Message
,Math::BigFloat
,Math::BigInt
,Math::BigInt::FastCalc
,Math::BigRat
,Math::Complex
,Math::Trig
,Memoize
,Module::Build
,Module::CoreList
,Module::Load
,Module::Load::Conditional
,Module::Loaded
,Module::Pluggable
,NDBM_File
,Net::Ping
,NEXT
,Object::Accessor
,OS2::REXX
,Package::Constants
,PerlIO
,PerlIO::via
,Pod::Man
,Pod::Parser
,Pod::Simple
,Pod::Text
,POSIX
,Safe
,Scalar::Util
,SelectSaver
,SelfLoader
,Socket
,Storable
,Switch
,Symbol
,Sys::Syslog
,Term::ANSIColor
,Term::ReadLine
,Term::UI
,Test::Harness
,Test::Simple
,Text::ParseWords
,Text::Tabs
,Text::Wrap
,Thread::Queue
,Thread::Semaphore
,threads
,threads::shared
,Tie::RefHash
,Tie::StdHandle
,Time::HiRes
,Time::Local
,Time::Piece
,Unicode::Normalize
,Unicode::UCD
,UNIVERSAL
,Win32
,Win32API::File
,XSLoader
- Utility Changes
h2ph, h2xs, perl5db.pl, perlthanks
- New Documentation
perlhaiku, perlmroapi, perlperf, perlrepository, perlthanks
- Changes to Existing Documentation
- Performance Enhancements
- Installation and Configuration Improvements
- ext/ reorganisation
- Configuration improvements
- Compilation improvements
- Platform Specific Changes
AIX, Cygwin, FreeBSD, Irix, Haiku, MirOS BSD, NetBSD, Stratus VOS, Symbian, Win32, VMS
- Selected Bug Fixes
- New or Changed Diagnostics
panic: sv_chop %s
,Can't locate package %s for the parents of %s
,v-string in use/require is non-portable
,Deep recursion on subroutine "%s"
- Changed Internals
SVf_UTF8
,SVs_TEMP
- 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
Known Problems
Deprecations
Acknowledgements
Reporting Bugs
SEE ALSO
perl5100delta - what is new for perl 5.10.0
- DESCRIPTION
- Core Enhancements
- The feature pragma
- New -E command-line switch
- Defined-or operator
- Switch and Smart Match operator
- Regular expressions
Recursive Patterns, Named Capture Buffers, Possessive Quantifiers, Backtracking control verbs, Relative backreferences,
\K
escape, Vertical and horizontal whitespace, and linebreak, Optional pre-match and post-match captures with the /p flag- say()
- Lexical $_
- The _ prototype
- UNITCHECK blocks
- New Pragma, mro
- readdir() may return a "short filename" on Windows
- readpipe() is now overridable
- Default argument for readline()
- state() variables
- Stacked filetest operators
- UNIVERSAL::DOES()
- Formats
- Byte-order modifiers for pack() and unpack()
- no VERSION
- chdir, chmod and chown on filehandles
- OS groups
- Recursive sort subs
- Exceptions in constant folding
- Source filters in @INC
- New internal variables
${^RE_DEBUG_FLAGS}
,${^CHILD_ERROR_NATIVE}
,${^RE_TRIE_MAXBUF}
,${^WIN32_SLOPPY_STAT}
Miscellaneous
UCD 5.0.0
MAD
kill() on Windows
- Incompatible Changes
Packing and UTF-8 strings
Byte/character count feature in unpack()
The
$*
and$#
variables have been removedsubstr() lvalues are no longer fixed-length
Parsing of
-f _
:unique
Effect of pragmas in eval
chdir FOO
Handling of .pmc files
$^V is now a
version
object instead of a v-string@- and @+ in patterns
$AUTOLOAD
can now be taintedTainting and printf
undef and signal handlers
strictures and dereferencing in defined()
(?p{})
has been removedPseudo-hashes have been removed
Removal of the bytecode compiler and of perlcc
Removal of the JPL
Recursive inheritance detected earlier
warnings::enabled and warnings::warnif changed to favor users of modules
Removal of
package;
(package
without arguments)- Modules and Pragmata
- Upgrading individual core modules
- Pragmata Changes
feature
,mro
, Scoping of thesort
pragma, Scoping ofbignum
,bigint
,bigrat
,base
,strict
andwarnings
,version
,warnings
,less
- New modules
- Selected Changes to Core Modules
Attribute::Handlers
,B::Lint
,B
,Thread
- Utility Changes
perl -d, ptar, ptardiff, shasum, corelist, h2ph and h2xs, perlivp, find2perl, config_data, cpanp, cpan2dist, pod2html
- New Documentation
- Performance Enhancements
- In-place sorting
- Lexical array access
- XS-assisted SWASHGET
- Constant subroutines
- PERL_DONT_CREATE_GVSV
- Weak references are cheaper
- sort() enhancements
- Memory optimisations
- UTF-8 cache optimisation
- Sloppy stat on Windows
- Regular expressions optimisations
Engine de-recursivised, Single char char-classes treated as literals, Trie optimisation of literal string alternations, Aho-Corasick start-point optimisation
- Installation and Configuration Improvements
- Configuration improvements
-Dusesitecustomize
, Relocatable installations, strlcat() and strlcpy(),d_pseudofork
andd_printf_format_null
, Configure help- 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
- Installation improvements
Module auxiliary files
New Or Improved Platforms
- Selected Bug Fixes
strictures in regexp-eval blocks, Calling CORE::require(), Subscripts of slices,
no warnings 'category'
works correctly with -w, threads improvements, chr() 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, study() and UTF-8, Critical signals,@INC
-hook fix,-t
switch fix, Duping UTF-8 filehandles, Localisation of hash elements- New or Changed Diagnostics
Use of uninitialized value, Deprecated use of my() in false conditional, !=~ should be !~, Newline in left-justified string, Too late for "-T" option, "%s" variable
%s
masks earlier declaration, readdir()/closedir()/etc. attempted on invalid dirhandle, Opening dirhandle/filehandle%s
also as a file/directory, Use of -P is deprecated, v-string in use/require is non-portable, perl -V- Changed Internals
Reordering of SVt_* constants
Elimination of SVt_PVBM
New type SVt_BIND
Removal of CPP symbols
Less space is used by ops
New parser
Use of
const
Mathoms
AvFLAGS
has been removedav_*
changes$^H and %^H
B:: modules inheritance changed
Anonymous hash and array constructors
- Known Problems
UTF-8 problems
Platform Specific Problems
Reporting Bugs
SEE ALSO
perl589delta - what is new for perl v5.8.9
- DESCRIPTION
- Notice
- Incompatible Changes
- Core Enhancements
- Unicode Character Database 5.1.0
- stat and -X on directory handles
- Source filters in @INC
- Exceptions in constant folding
- no VERSION
- Improved internal UTF-8 caching code
- Runtime relocatable installations
- New internal variables
${^CHILD_ERROR_NATIVE}
,${^UTF8CACHE}
readpipe
is now overridablesimple exception handling macros
-D option enhancements
XS-assisted SWASHGET
Constant subroutines
- New Platforms
- Modules and Pragmata
New Modules
Updated Modules
- Utility Changes
debugger upgraded to version 1.31
perlthanks
perlbug
h2xs
h2ph
- New Documentation
- Changes to Existing Documentation
- Performance Enhancements
- Installation and Configuration Improvements
Relocatable installations
Configuration improvements
Compilation improvements
Installation improvements
Platform Specific Changes
- Selected Bug Fixes
Unicode
PerlIO
Magic
Reblessing overloaded objects now works
strict
now propagates correctly into string evalsOther fixes
Platform Specific Fixes
Smaller fixes
- New or Changed Diagnostics
panic: sv_chop
%s
Maximal count of pending signals (%s) exceeded
panic: attempt to call
%s
in%s
FETCHSIZE returned a negative value
Can't upgrade
%s
(%d) to%d
%s
argument is not a HASH or ARRAY element or a subroutineCannot make the non-overridable builtin
%s
fatalUnrecognized character '%s' in column
%d
Offset outside string
Invalid escape in the specified encoding in regexp; marked by <-- HERE in m/%s/
Your machine doesn't support dump/undump
- Changed Internals
Macro cleanups
- New Tests
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
- Known Problems
- Platform Specific Notes
Win32
OS/2
VMS
Obituary
Acknowledgements
Reporting Bugs
SEE ALSO
perl588delta - what is new for perl v5.8.8
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
- Modules and Pragmata
- Utility Changes
h2xs
enhancementsperlivp
enhancements- New Documentation
- Performance Enhancements
- Installation and Configuration Improvements
- Selected Bug Fixes
no warnings 'category' works correctly with -w
Remove over-optimisation
sprintf() fixes
Debugger and Unicode slowdown
Smaller fixes
- New or Changed Diagnostics
Attempt to set length of freed array
Non-string passed as bitmask
Search pattern not terminated or ternary operator parsed as search pattern
Changed Internals
Platform Specific Problems
Reporting Bugs
SEE ALSO
perl587delta - what is new for perl v5.8.7
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
Unicode Character Database 4.1.0
suidperl less insecure
Optional site customization script
Config.pm
is now much smaller- Modules and Pragmata
- Utility Changes
find2perl enhancements
Performance Enhancements
Installation and Configuration Improvements
Selected Bug Fixes
New or Changed Diagnostics
Changed Internals
Known Problems
Platform Specific Problems
Reporting Bugs
SEE ALSO
perl586delta - what is new for perl v5.8.6
DESCRIPTION
Incompatible Changes
Core Enhancements
Modules and Pragmata
Utility Changes
Performance Enhancements
Selected Bug Fixes
New or Changed Diagnostics
Changed Internals
New Tests
Reporting Bugs
SEE ALSO
perl585delta - what is new for perl v5.8.5
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
- Modules and Pragmata
- Utility Changes
Perl's debugger
h2ph
Installation and Configuration Improvements
Selected Bug Fixes
New or Changed Diagnostics
Changed Internals
Known Problems
Platform Specific Problems
Reporting Bugs
SEE ALSO
perl584delta - what is new for perl v5.8.4
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
Malloc wrapping
Unicode Character Database 4.0.1
suidperl less insecure
format
- Modules and Pragmata
- Updated modules
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
Performance Enhancements
Utility Changes
Installation and Configuration Improvements
Selected Bug Fixes
New or Changed Diagnostics
Changed Internals
Future Directions
Platform Specific Problems
Reporting Bugs
SEE ALSO
perl583delta - what is new for perl v5.8.3
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
- Modules and Pragmata
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
Utility Changes
New Documentation
Installation and Configuration Improvements
Selected Bug Fixes
New or Changed Diagnostics
Changed Internals
Configuration and Building
Platform Specific Problems
Known Problems
Future Directions
Obituary
Reporting Bugs
SEE ALSO
perl582delta - what is new for perl v5.8.2
- DESCRIPTION
- Incompatible Changes
- Core Enhancements
Hash Randomisation
Threading
- Modules and Pragmata
- Updated Modules And Pragmata
Devel::PPPort, Digest::MD5, I18N::LangTags, libnet, MIME::Base64, Pod::Perldoc, strict, Tie::Hash, Time::HiRes, Unicode::Collate, Unicode::Normalize, UNIVERSAL
Selected Bug Fixes
Changed Internals
Platform Specific Problems
Future Directions
Reporting Bugs
SEE ALSO
perl581delta - what is new for perl v5.8.1
- DESCRIPTION
- Incompatible Changes
Hash Randomisation
UTF-8 On Filehandles No Longer Activated By Locale
Single-number v-strings are no longer v-strings before "=>"
(Win32) The -C Switch Has Been Repurposed
(Win32) The /d Switch Of cmd.exe
- Core Enhancements
UTF-8 no longer default under UTF-8 locales
Unsafe signals again available
Tied Arrays with Negative Array Indices
local ${$x}
Unicode Character Database 4.0.0
Deprecation Warnings
Miscellaneous Enhancements
- Modules and Pragmata
- Updated Modules And Pragmata
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
- Utility Changes
- New Documentation
- Installation and Configuration Improvements
Platform-specific enhancements
- Selected Bug Fixes
Closures, eval and lexicals
Generic fixes
Platform-specific fixes
- New or Changed Diagnostics
Changed "A thread exited while
%d
threads were running"Removed "Attempt to clear a restricted hash"
New "Illegal declaration of anonymous subroutine"
Changed "Invalid range "%s" in transliteration operator"
New "Missing control char name in \c"
New "Newline in left-justified string for
%s
"New "Possible precedence problem on bitwise
%c
operator"New "Pseudo-hashes are deprecated"
New "read() on
%s
filehandle%s
"New "5.005 threads are deprecated"
New "Tied variable freed while still in use"
New "To%s: illegal mapping '%s'"
New "Use of freed value in iteration"
- Changed Internals
- New Tests
- Known Problems
Tied hashes in scalar context
Net::Ping 450_service and 510_ping_udp failures
B::C
- Platform Specific Problems
EBCDIC Platforms
Cygwin 1.5 problems
HP-UX: HP cc warnings about sendfile and sendpath
IRIX: t/uni/tr_7jis.t falsely failing
Mac OS X: no usemymalloc
Tru64: No threaded builds with GNU cc (gcc)
Win32: sysopen, sysread, syswrite
Future Directions
Reporting Bugs
SEE ALSO
perl58delta - what is new for perl v5.8.0
- DESCRIPTION
- Highlights In 5.8.0
- Incompatible Changes
Binary Incompatibility
64-bit platforms and malloc
AIX Dynaloading
Attributes for
my
variables now handled at run-timeSocket Extension Dynamic in VMS
IEEE-format Floating Point Default on OpenVMS Alpha
New Unicode Semantics (no more
use utf8
, almost)New Unicode Properties
REF(...) Instead Of SCALAR(...)
pack/unpack D/F recycled
glob() now returns filenames in alphabetical order
Deprecations
- Core Enhancements
Unicode Overhaul
PerlIO is Now The Default
ithreads
Restricted Hashes
Safe Signals
Understanding of Numbers
Arrays now always interpolate into double-quoted strings [561]
Miscellaneous Changes
- Modules and Pragmata
New Modules and Pragmata
Updated And Improved Modules and Pragmata
- Utility Changes
- New Documentation
- Performance Enhancements
- Installation and Configuration Improvements
Generic Improvements
New Or Improved Platforms
- Selected Bug Fixes
Platform Specific Changes and Fixes
- New or Changed Diagnostics
- Changed Internals
- Security Vulnerability Closed [561]
- New Tests
- Known Problems
The Compiler Suite Is Still Very Experimental
Localising Tied Arrays and Hashes Is Broken
Building Extensions Can Fail Because Of Largefiles
Modifying
$_
Inside for(..)mod_perl 1.26 Doesn't Build With Threaded Perl
lib/ftmp-security tests warn 'system possibly insecure'
libwww-perl (LWP) fails base/date #51
PDL failing some tests
Perl_get_sv
Self-tying Problems
ext/threads/t/libc
Failure of Thread (5.005-style) tests
Timing problems
Tied/Magical Array/Hash Elements Do Not Autovivify
Unicode in package/class and subroutine names does not work
- Platform Specific Problems
AIX
Alpha systems with old gccs fail several tests
AmigaOS
BeOS
Cygwin "unable to remap"
Cygwin ndbm tests fail on FAT
DJGPP Failures
FreeBSD built with ithreads coredumps reading large directories
FreeBSD Failing locale Test 117 For ISO 8859-15 Locales
IRIX fails ext/List/Util/t/shuffle.t or Digest::MD5
HP-UX lib/posix Subtest 9 Fails When LP64-Configured
Linux with glibc 2.2.5 fails t/op/int subtest #6 with -Duse64bitint
Linux With Sfio Fails op/misc Test 48
Mac OS X
Mac OS X dyld undefined symbols
OS/2 Test Failures
op/sprintf tests 91, 129, and 130
SCO
Solaris 2.5
Solaris x86 Fails Tests With -Duse64bitint
SUPER-UX (NEC SX)
Term::ReadKey not working on Win32
UNICOS/mk
UTS
VOS (Stratus)
VMS
Win32
XML::Parser not working
z/OS (OS/390)
Unicode Support on EBCDIC Still Spotty
Seen In Perl 5.7 But Gone Now
Reporting Bugs
SEE ALSO
HISTORY
perl561delta - what's new for perl v5.6.1
- DESCRIPTION
- Summary of changes between 5.6.0 and 5.6.1
- Security Issues
- Core bug fixes
UNIVERSAL::isa()
, Memory leaks, Numeric conversions, qw(a\\b), caller(), Bugs in regular expressions, "slurp" mode, Autovivification of symbolic references to special variables, Lexical warnings, Spurious warnings and errors, glob(), Tainting, sort(), #line directives, Subroutine prototypes, map(), Debugger, PERL5OPT, chop(), Unicode support, 64-bit support, Compiler, Lvalue subroutines, IO::Socket, File::Find, xsubpp,no Module;
, Tests- Core features
- Configuration issues
- Documentation
- Bundled modules
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
- Platform-specific improvements
NCR MP-RAS, NonStop-UX
- Core Enhancements
Interpreter cloning, threads, and concurrency
Lexically scoped warning categories
Unicode and UTF-8 support
Support for interpolating named characters
"our" declarations
Support for strings represented as a vector of ordinals
Improved Perl version numbering system
New syntax for declaring subroutine attributes
File and directory handles can be autovivified
open() with more than two arguments
64-bit support
Large file support
Long doubles
"more bits"
Enhanced support for sort() subroutines
sort $coderef @foo
allowedFile globbing implemented internally
Support for CHECK blocks
POSIX character class syntax [: :] supported
Better pseudo-random number generator
Improved
qw//
operatorBetter worst-case behavior of hashes
pack() format 'Z' supported
pack() format modifier '!' supported
pack() and unpack() support counted strings
Comments in pack() templates
Weak references
Binary numbers supported
Lvalue subroutines
Some arrows may be omitted in calls through references
Boolean assignment operators are legal lvalues
exists() is supported on subroutine names
exists() and delete() are supported on array elements
Pseudo-hashes work better
Automatic flushing of output buffers
Better diagnostics on meaningless filehandle operations
Where possible, buffered data discarded from duped input filehandle
eof() has the same old magic as <>
binmode() can be used to set :crlf and :raw modes
-T
filetest recognizes UTF-8 encoded files as "text"system(), backticks and pipe open now reflect exec() failure
Improved diagnostics
Diagnostics follow STDERR
More consistent close-on-exec behavior
syswrite() ease-of-use
Better syntax checks on parenthesized unary operators
Bit operators support full native integer width
Improved security features
More functional bareword prototype (*)
require
anddo
may be overridden$^X variables may now have names longer than one character
New variable $^C reflects
-c
switchNew variable $^V contains Perl version as a string
Optional Y2K warnings
Arrays now always interpolate into double-quoted strings
@- and @+ provide starting/ending offsets of regex submatches
- Modules and Pragmata
- Modules
attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
Pragmata
- Utility Changes
dprofpp
find2perl
h2xs
perlcc
perldoc
The Perl Debugger
- Improved Documentation
perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
- Performance enhancements
Simple sort() using {
$a
<=>$b
} and the like are optimizedOptimized assignments to lexical variables
Faster subroutine calls
delete(), each(), values() and hash iteration are faster
- Installation and Configuration Improvements
-Dusethreads means something different
New Configure flags
Threadedness and 64-bitness now more daring
Long Doubles
-Dusemorebits
-Duselargefiles
installusrbinperl
SOCKS support
-A
flagEnhanced Installation Directories
gcc automatically tried if 'cc' does not seem to be working
- Platform specific changes
Supported platforms
DOS
OS390 (OpenEdition MVS)
VMS
Win32
- Significant bug fixes
<HANDLE> on empty files
eval '...'
improvementsAll compilation errors are true errors
Implicitly closed filehandles are safer
Behavior of list slices is more consistent
(\$)
prototype and$foo{a}
goto &sub
and AUTOLOAD-bareword
allowed underuse integer
Failures in DESTROY()
Locale bugs fixed
Memory leaks
Spurious subroutine stubs after failed subroutine calls
Taint failures under
-U
END blocks and the
-c
switchPotential to leak DATA filehandles
- New or Changed Diagnostics
"%s" variable
%s
masks earlier declaration in same%s
, "my sub" not yet implemented, "our" variable%s
redeclared, '!' allowed only after types%s
, / cannot take a count, / must be followed by a, A or Z, / must be followed by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape \\%c passed through, /%s/: Unrecognized escape \\%c in character class passed through, /%s/ should probably be written as "%s", %s() called too early to check prototype,%s
argument is not a HASH or ARRAY element,%s
argument is not a HASH or ARRAY element or slice,%s
argument is not a subroutine name,%s
package attribute may clash with future reserved word:%s
, (in cleanup)%s
, <> should be quotes, Attempt to join self, Bad evalled substitution pattern, Bad realloc() ignored, Bareword found in conditional, Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector size > 32 non-portable, Buffer overflow in prime_env_iter:%s
, Can't check filesystem of script "%s", Can't declare class for non-scalar%s
in "%s", Can't declare%s
in "%s", Can't ignore signal CHLD, forcing to default, Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't remove%s: %s
, skipping file, Can't return%s
from lvalue subroutine, Can't weaken a nonreference, Character class [:%s:] unknown, Character class syntax [%s] belongs inside character classes, Constant is not%s
reference, constant(%s):%s
, CORE::%s is not a keyword, defined(@array) is deprecated, defined(%hash) is deprecated, Did not produce a valid header, (Did you mean "local" instead of "our"?), Document contains no data, entering effective%s
failed, false [] range "%s" in regexp, Filehandle%s
opened only for output, flock() on closed filehandle%s
, Global symbol "%s" requires explicit package name, Hexadecimal number > 0xffffffff non-portable, Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: |%s|, Illegal binary digit%s
, Illegal binary digit%s
ignored, Illegal number of bits in vec, Integer overflow in%s
number, Invalid%s
attribute:%s
, Invalid%s
attributes:%s
, invalid [] range "%s" in regexp, Invalid separator character%s
in attribute list, Invalid separator character%s
in subroutine attribute list, leaving effective%s
failed, Lvalue subs returning%s
not implemented yet, Method%s
not permitted, Missing%sbrace
%s on \N{}, Missing command in piped open, Missing name in "my sub", No%s
specified for -%c, No package name allowed for variable%s
in "our", No space allowed after -%c, no UTC offset information; assuming local time is UTC, Octal number > 037777777777 non-portable, panic: del_backref, panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing around "%s" list, Possible unintended interpolation of%s
in string, Possible Y2K bug:%s
, pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead, Premature end of script headers, Repeat count in pack overflows, Repeat count in unpack overflows, realloc() of freed memory ignored, Reference is already weak, setpgrp can't take arguments, Strange *+?{} on zero-length expression, switching effective%s
is not implemented, This Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL environ elements (%s=%s), Too late to run%s
block, Unknown open() mode '%s', Unknown process%x
sent message to prime_env_iter:%s
, Unrecognized escape \\%c passed through, Unterminated attribute parameter in attribute list, Unterminated attribute list, Unterminated attribute parameter in subroutine attribute list, Unterminated subroutine attribute list, Value of CLI symbol "%s" too long, Version number must be a constant number- New tests
- Incompatible Changes
- Perl Source Incompatibilities
CHECK is a new keyword, Treatment of list slices of undef has changed, Format of
$English::PERL_VERSION
is different, Literals of the form1.2.3
parse differently, Possibly changed pseudo-random number generator, Hashing function for hash keys has changed,undef
fails on read only values, Close-on-exec bit may be set on pipe and socket handles, Writing"$$1"
to mean"${$}1"
is unsupported, delete(), each(), values() and\(%h)
, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, Text of some diagnostic output has changed,%@
has been removed, Parenthesized not() behaves like a list operator, Semantics of bareword prototype(*)
have changed, Semantics of bit operators may have changed on 64-bit platforms, More builtins taint their results- C Source Incompatibilities
PERL_POLLUTE
,PERL_IMPLICIT_CONTEXT
,PERL_POLLUTE_MALLOC
- Compatible C Source API Changes
PATCHLEVEL
is nowPERL_VERSION
Binary Incompatibilities
- Known Problems
- Localizing a tied hash element may leak memory
- Known test failures
- EBCDIC platforms not fully supported
- UNICOS/mk CC failures during Configure run
- Arrow operator and arrays
- Experimental features
Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The pseudo-hash data type, The Compiler suite, Internal implementation of file globbing, The DB module, The regular expression code constructs:
- Obsolete Diagnostics
Character class syntax [: :] is reserved for future extensions, Ill-formed logical name |%s| in prime_env_iter, In string, @%s now must be written as \@%s, Probable precedence problem on
%s
, regexp too big, Use of "$$<digit>" to mean "${$}<digit>" is deprecated
Reporting Bugs
SEE ALSO
HISTORY
perl56delta - what's new for perl v5.6.0
- DESCRIPTION
- Core Enhancements
Interpreter cloning, threads, and concurrency
Lexically scoped warning categories
Unicode and UTF-8 support
Support for interpolating named characters
"our" declarations
Support for strings represented as a vector of ordinals
Improved Perl version numbering system
New syntax for declaring subroutine attributes
File and directory handles can be autovivified
open() with more than two arguments
64-bit support
Large file support
Long doubles
"more bits"
Enhanced support for sort() subroutines
sort $coderef @foo
allowedFile globbing implemented internally
Support for CHECK blocks
POSIX character class syntax [: :] supported
Better pseudo-random number generator
Improved
qw//
operatorBetter worst-case behavior of hashes
pack() format 'Z' supported
pack() format modifier '!' supported
pack() and unpack() support counted strings
Comments in pack() templates
Weak references
Binary numbers supported
Lvalue subroutines
Some arrows may be omitted in calls through references
Boolean assignment operators are legal lvalues
exists() is supported on subroutine names
exists() and delete() are supported on array elements
Pseudo-hashes work better
Automatic flushing of output buffers
Better diagnostics on meaningless filehandle operations
Where possible, buffered data discarded from duped input filehandle
eof() has the same old magic as <>
binmode() can be used to set :crlf and :raw modes
-T
filetest recognizes UTF-8 encoded files as "text"system(), backticks and pipe open now reflect exec() failure
Improved diagnostics
Diagnostics follow STDERR
More consistent close-on-exec behavior
syswrite() ease-of-use
Better syntax checks on parenthesized unary operators
Bit operators support full native integer width
Improved security features
More functional bareword prototype (*)
require
anddo
may be overridden$^X variables may now have names longer than one character
New variable $^C reflects
-c
switchNew variable $^V contains Perl version as a string
Optional Y2K warnings
Arrays now always interpolate into double-quoted strings
@- and @+ provide starting/ending offsets of regex matches
- Modules and Pragmata
- Modules
attributes, B, Benchmark, ByteLoader, constant, charnames, Data::Dumper, DB, DB_File, Devel::DProf, Devel::Peek, Dumpvalue, DynaLoader, English, Env, Fcntl, File::Compare, File::Find, File::Glob, File::Spec, File::Spec::Functions, Getopt::Long, IO, JPL, lib, Math::BigInt, Math::Complex, Math::Trig, Pod::Parser, Pod::InputObjects, Pod::Checker, podchecker, Pod::ParseUtils, Pod::Find, Pod::Select, podselect, Pod::Usage, pod2usage, Pod::Text and Pod::Man, SDBM_File, Sys::Syslog, Sys::Hostname, Term::ANSIColor, Time::Local, Win32, XSLoader, DBM Filters
Pragmata
- Utility Changes
dprofpp
find2perl
h2xs
perlcc
perldoc
The Perl Debugger
- Improved Documentation
perlapi.pod, perlboot.pod, perlcompile.pod, perldbmfilter.pod, perldebug.pod, perldebguts.pod, perlfork.pod, perlfilter.pod, perlhack.pod, perlintern.pod, perllexwarn.pod, perlnumber.pod, perlopentut.pod, perlreftut.pod, perltootc.pod, perltodo.pod, perlunicode.pod
- Performance enhancements
Simple sort() using {
$a
<=>$b
} and the like are optimizedOptimized assignments to lexical variables
Faster subroutine calls
delete(), each(), values() and hash iteration are faster
- Installation and Configuration Improvements
-Dusethreads means something different
New Configure flags
Threadedness and 64-bitness now more daring
Long Doubles
-Dusemorebits
-Duselargefiles
installusrbinperl
SOCKS support
-A
flagEnhanced Installation Directories
- Platform specific changes
Supported platforms
DOS
OS390 (OpenEdition MVS)
VMS
Win32
- Significant bug fixes
<HANDLE> on empty files
eval '...'
improvementsAll compilation errors are true errors
Implicitly closed filehandles are safer
Behavior of list slices is more consistent
(\$)
prototype and$foo{a}
goto &sub
and AUTOLOAD-bareword
allowed underuse integer
Failures in DESTROY()
Locale bugs fixed
Memory leaks
Spurious subroutine stubs after failed subroutine calls
Taint failures under
-U
END blocks and the
-c
switchPotential to leak DATA filehandles
- New or Changed Diagnostics
"%s" variable
%s
masks earlier declaration in same%s
, "my sub" not yet implemented, "our" variable%s
redeclared, '!' allowed only after types%s
, / cannot take a count, / must be followed by a, A or Z, / must be followed by a*, A* or Z*, / must follow a numeric type, /%s/: Unrecognized escape \\%c passed through, /%s/: Unrecognized escape \\%c in character class passed through, /%s/ should probably be written as "%s", %s() called too early to check prototype,%s
argument is not a HASH or ARRAY element,%s
argument is not a HASH or ARRAY element or slice,%s
argument is not a subroutine name,%s
package attribute may clash with future reserved word:%s
, (in cleanup)%s
, <> should be quotes, Attempt to join self, Bad evalled substitution pattern, Bad realloc() ignored, Bareword found in conditional, Binary number > 0b11111111111111111111111111111111 non-portable, Bit vector size > 32 non-portable, Buffer overflow in prime_env_iter:%s
, Can't check filesystem of script "%s", Can't declare class for non-scalar%s
in "%s", Can't declare%s
in "%s", Can't ignore signal CHLD, forcing to default, Can't modify non-lvalue subroutine call, Can't read CRTL environ, Can't remove%s: %s
, skipping file, Can't return%s
from lvalue subroutine, Can't weaken a nonreference, Character class [:%s:] unknown, Character class syntax [%s] belongs inside character classes, Constant is not%s
reference, constant(%s):%s
, CORE::%s is not a keyword, defined(@array) is deprecated, defined(%hash) is deprecated, Did not produce a valid header, (Did you mean "local" instead of "our"?), Document contains no data, entering effective%s
failed, false [] range "%s" in regexp, Filehandle%s
opened only for output, flock() on closed filehandle%s
, Global symbol "%s" requires explicit package name, Hexadecimal number > 0xffffffff non-portable, Ill-formed CRTL environ value "%s", Ill-formed message in prime_env_iter: |%s|, Illegal binary digit%s
, Illegal binary digit%s
ignored, Illegal number of bits in vec, Integer overflow in%s
number, Invalid%s
attribute:%s
, Invalid%s
attributes:%s
, invalid [] range "%s" in regexp, Invalid separator character%s
in attribute list, Invalid separator character%s
in subroutine attribute list, leaving effective%s
failed, Lvalue subs returning%s
not implemented yet, Method%s
not permitted, Missing%sbrace
%s on \N{}, Missing command in piped open, Missing name in "my sub", No%s
specified for -%c, No package name allowed for variable%s
in "our", No space allowed after -%c, no UTC offset information; assuming local time is UTC, Octal number > 037777777777 non-portable, panic: del_backref, panic: kid popen errno read, panic: magic_killbackrefs, Parentheses missing around "%s" list, Possible unintended interpolation of%s
in string, Possible Y2K bug:%s
, pragma "attrs" is deprecated, use "sub NAME : ATTRS" instead, Premature end of script headers, Repeat count in pack overflows, Repeat count in unpack overflows, realloc() of freed memory ignored, Reference is already weak, setpgrp can't take arguments, Strange *+?{} on zero-length expression, switching effective%s
is not implemented, This Perl can't reset CRTL environ elements (%s), This Perl can't set CRTL environ elements (%s=%s), Too late to run%s
block, Unknown open() mode '%s', Unknown process%x
sent message to prime_env_iter:%s
, Unrecognized escape \\%c passed through, Unterminated attribute parameter in attribute list, Unterminated attribute list, Unterminated attribute parameter in subroutine attribute list, Unterminated subroutine attribute list, Value of CLI symbol "%s" too long, Version number must be a constant number- New tests
- Incompatible Changes
- Perl Source Incompatibilities
CHECK is a new keyword, Treatment of list slices of undef has changed, Format of
$English::PERL_VERSION
is different, Literals of the form1.2.3
parse differently, Possibly changed pseudo-random number generator, Hashing function for hash keys has changed,undef
fails on read only values, Close-on-exec bit may be set on pipe and socket handles, Writing"$$1"
to mean"${$}1"
is unsupported, delete(), each(), values() and\(%h)
, vec(EXPR,OFFSET,BITS) enforces powers-of-two BITS, Text of some diagnostic output has changed,%@
has been removed, Parenthesized not() behaves like a list operator, Semantics of bareword prototype(*)
have changed, Semantics of bit operators may have changed on 64-bit platforms, More builtins taint their results- C Source Incompatibilities
PERL_POLLUTE
,PERL_IMPLICIT_CONTEXT
,PERL_POLLUTE_MALLOC
- Compatible C Source API Changes
PATCHLEVEL
is nowPERL_VERSION
Binary Incompatibilities
- Known Problems
- Thread test failures
- EBCDIC platforms not supported
- In 64-bit HP-UX the lib/io_multihomed test may hang
- NEXTSTEP 3.3 POSIX test failure
- Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with gcc
- UNICOS/mk CC failures during Configure run
- Arrow operator and arrays
- Experimental features
Threads, Unicode, 64-bit support, Lvalue subroutines, Weak references, The pseudo-hash data type, The Compiler suite, Internal implementation of file globbing, The DB module, The regular expression code constructs:
- Obsolete Diagnostics
Character class syntax [: :] is reserved for future extensions, Ill-formed logical name |%s| in prime_env_iter, In string, @%s now must be written as \@%s, Probable precedence problem on
%s
, regexp too big, Use of "$$<digit>" to mean "${$}<digit>" is deprecated
Reporting Bugs
SEE ALSO
HISTORY
perl5005delta - what's new for perl5.005
- DESCRIPTION
- About the new versioning system
- Incompatible Changes
WARNING: This version is not binary compatible with Perl 5.004
Default installation structure has changed
Perl Source Compatibility
C Source Compatibility
Binary Compatibility
Security fixes may affect compatibility
Relaxed new mandatory warnings introduced in 5.004
Licensing
- Core Changes
- Threads
- Compiler
- Regular Expressions
Many new and improved optimizations, Many bug fixes, New regular expression constructs, New operator for precompiled regular expressions, Other improvements, Incompatible changes
Improved malloc()
Quicksort is internally implemented
Reliable signals
Reliable stack pointers
More generous treatment of carriage returns
Memory leaks
Better support for multiple interpreters
Behavior of local() on array and hash elements is now well-defined
%!
is transparently tied to the Errno modulePseudo-hashes are supported
EXPR foreach EXPR
is supportedKeywords can be globally overridden
$^E
is meaningful on Win32foreach (1..1000000)
optimizedFoo::
can be used as implicitly quoted package nameexists $Foo::{Bar::}
tests existence of a packageBetter locale support
Experimental support for 64-bit platforms
prototype() returns useful results on builtins
Extended support for exception handling
Re-blessing in DESTROY() supported for chaining DESTROY() methods
All
printf
format conversions are handled internallyNew
INIT
keywordNew
lock
keywordNew
qr//
operatorour
is now a reserved wordTied arrays are now fully supported
Tied handles support is better
4th argument to substr
Negative LENGTH argument to splice
Magic lvalues are now more magical
<> now reads in records
- Supported Platforms
New Platforms
Changes in existing support
- Modules and Pragmata
- New Modules
B, Data::Dumper, Dumpvalue, Errno, File::Spec, ExtUtils::Installed, ExtUtils::Packlist, Fatal, IPC::SysV, Test, Tie::Array, Tie::Handle, Thread, attrs, fields, re
- Changes in existing modules
Benchmark, Carp, CGI, Fcntl, Math::Complex, Math::Trig, POSIX, DB_File, MakeMaker, CPAN, Cwd
- Utility Changes
- Documentation Changes
- New Diagnostics
Ambiguous call resolved as CORE::%s(), qualify as such or use &, Bad index while coercing array into hash, Bareword "%s" refers to nonexistent package, Can't call method "%s" on an undefined value, Can't check filesystem of script "%s" for nosuid, Can't coerce array into hash, Can't goto subroutine from an eval-string, Can't localize pseudo-hash element, Can't use %%! because Errno.pm is not available, Cannot find an opnumber for "%s", Character class syntax [. .] is reserved for future extensions, Character class syntax [: :] is reserved for future extensions, Character class syntax [= =] is reserved for future extensions,
%s:
Eval-group in insecure regular expression,%s:
Eval-group not allowed, use re 'eval',%s:
Eval-group not allowed at run time, Explicit blessing to '' (assuming package main), Illegal hex digit ignored, No such array field, No such field "%s" in variable%s
of type%s
, Out of memory during ridiculously large request, Range iterator outside integer range, Recursive inheritance detected while looking for method '%s'%s
, Reference found where even-sized list expected, Undefined value assigned to typeglob, Use of reserved word "%s" is deprecated, perl: warning: Setting locale failed- Obsolete Diagnostics
Can't mktemp(), Can't write to temp file for -e:
%s
, Cannot open temporary file, regexp too big
Configuration Changes
BUGS
SEE ALSO
HISTORY
perl5004delta - what's new for perl5.004
- DESCRIPTION
- Supported Environments
- Core Changes
- List assignment to %ENV works
- Change to "Can't locate Foo.pm in @INC" error
- Compilation option: Binary compatibility with 5.003
- $PERL5OPT environment variable
- Limitations on -M, -m, and -T options
- More precise warnings
- Deprecated: Inherited AUTOLOAD for non-methods
- Previously deprecated %OVERLOAD is no longer usable
- Subroutine arguments created only when they're modified
- Group vector changeable with $)
- Fixed parsing of $$<digit>, &$<digit>, etc.
- Fixed localization of $<digit>, $&, etc.
- No resetting of $. on implicit close
- wantarray may return undef
- eval EXPR determines value of EXPR in scalar context
- Changes to tainting checks
No glob() or <*>, No spawning if tainted
$CDPATH
,$ENV
,$BASH_ENV
, No spawning if tainted$TERM
doesn't look like a terminal name- New Opcode module and revised Safe module
- Embedding improvements
- Internal change: FileHandle class based on IO::* classes
- Internal change: PerlIO abstraction interface
- New and changed syntax
$coderef
->(PARAMS)- New and changed builtin constants
__PACKAGE__
- New and changed builtin variables
$^E, $^H, $^M
- New and changed builtin functions
delete on slices, flock, printf and sprintf, keys as an lvalue, my() in Control Structures, pack() and unpack(), sysseek(), use VERSION, use Module VERSION LIST, prototype(FUNCTION), srand,
$_
as Default,m//gc
does not reset search position on failure,m//x
ignores whitespace before ?*+{}, nestedsub{}
closures work now, formats work right on changing lexicals- New builtin methods
isa(CLASS), can(METHOD), VERSION( [NEED] )
- TIEHANDLE now supported
TIEHANDLE classname, LIST, PRINT this, LIST, PRINTF this, LIST, READ this LIST, READLINE this, GETC this, DESTROY this
- Malloc enhancements
-DPERL_EMERGENCY_SBRK, -DPACK_MALLOC, -DTWO_POT_OPTIMIZE
Miscellaneous efficiency enhancements
- Support for More Operating Systems
Win32
Plan 9
QNX
AmigaOS
- Pragmata
use autouse MODULE => qw(sub1 sub2 sub3), use blib, use blib 'dir', use constant NAME => VALUE, use locale, use ops, use vmsish
- Modules
Required Updates
Installation directories
Module information summary
Fcntl
IO
Math::Complex
Math::Trig
DB_File
Net::Ping
Object-oriented overrides for builtin operators
- Utility Changes
- pod2html
Sends converted HTML to standard output
- xsubpp
void
XSUBs now default to returning nothing
- C Language API Changes
gv_fetchmethod
andperl_call_sv
,perl_eval_pv
, Extended API for manipulating hashes- Documentation Changes
perldelta, perlfaq, perllocale, perltoot, perlapio, perlmodlib, perldebug, perlsec
- New Diagnostics
"my" variable
%s
masks earlier declaration in same scope,%s
argument is not a HASH element or slice, Allocation too large:%lx
, Allocation too large, Applying%s
to%s
will act on scalar(%s), Attempt to free nonexistent shared string, Attempt to use reference as lvalue in substr, Bareword "%s" refers to nonexistent package, Can't redefine active sort subroutine%s
, Can't use bareword ("%s") as%s
ref while "strict refs" in use, Cannot resolve method `%s' overloading `%s' in package `%s', Constant subroutine%s
redefined, Constant subroutine%s
undefined, Copy method did not return a reference, Died, Exiting pseudo-block via%s
, Identifier too long, Illegal character%s
(carriage return), Illegal switch in PERL5OPT:%s
, Integer overflow in hex number, Integer overflow in octal number, internal error: glob failed, Invalid conversion in%s:
"%s", Invalid type in pack: '%s', Invalid type in unpack: '%s', Name "%s::%s" used only once: possible typo, Null picture in formline, Offset outside string, Out of memory!, Out of memory during request for%s
, panic: frexp, Possible attempt to put comments in qw() list, Possible attempt to separate words with commas, Scalar value @%s{%s} better written as $%s{%s}, Stub found while resolving method `%s' overloading `%s' in%s
, Too late for "-T" option, untie attempted while%d
inner references still exist, Unrecognized character%s
, Unsupported function fork, Use of "$$<digit>" to mean "${$}<digit>" is deprecated, Value of%s
can be "0"; test with defined(), Variable "%s" may be unavailable, Variable "%s" will not stay shared, Warning: something's wrong, Ill-formed logical name |%s| in prime_env_iter, Got an error from DosAllocMem, Malformed PERLLIB_PREFIX, PERL_SH_DIR too long, Process terminated by SIG%s
BUGS
SEE ALSO
HISTORY
perlcommunity - a brief overview of the Perl community
- DESCRIPTION
- Where to Find the Community
- Mailing Lists and Newsgroups
- IRC
- Websites
<https://perl.com/>, <https://blogs.perl.org/>, <https://perl.theplanetarium.org/>, <https://perlweekly.com/>, <https://www.perlmonks.org/>, <https://stackoverflow.com/>
- User Groups
- Workshops
- Hackathons
- Conventions
The Perl Conference, OSCON
Calendar of Perl Events
AUTHOR
perldoc - Look up Perl documentation in Pod format.
- SYNOPSIS
- DESCRIPTION
- OPTIONS
-h, -D, -t, -u, -m module, -l, -U, -F, -f perlfunc, -q perlfaq-search-regexp, -a perlapifunc, -v perlvar, -T, -d destination-filename, -o output-formatname, -M module-name, -w option:value or -w option, -X, -L language_code, PageName|ModuleName|ProgramName|URL, -n some-formatter, -r, -i, -V
SECURITY
ENVIRONMENT
CHANGES
SEE ALSO
AUTHOR
perlexperiment - A listing of experimental features in Perl
- DESCRIPTION
- Current experiments
Smart match (
~~
), Pluggable keywords, Aliasing via reference, use re 'strict';, Declaring a reference to a variable, There is aninstallhtml
target in the Makefile, (Limited) Variable-length look-behind, Unicode private use character hooks, Unicode property wildcards, try/catch control structure, Use of@_
within subroutine signatures, The builtin namespace, The defer block modifier, Extra paired delimiters for quote-like operators- Accepted features
64-bit support, die accepts a reference, DB module, Weak references, Internal file glob, fork() emulation, -Dusemultiplicity -Duseithreads, Support for long doubles, The
\N
regex character class,(?{code})
and(??{ code })
, Linux abstract Unix domain sockets, Lvalue subroutines, Backtracking control verbs, The:pop
IO pseudolayer,\s
in regexp matches vertical tab, Postfix dereference syntax, Lexical subroutines, String- and number-specific bitwise operators, Alphabetic assertions, Script runs, The infixisa
operator, Subroutine signatures, Regular Expression Set Operations, try/catch control structure, The "const" attribute, for loop with multiple iteration variables- 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,
legacy
, Lexical$_
, Array and hash container functions accept references,our
can have an experimental optional attributeunique
, The:win32
IO pseudolayer
SEE ALSO
AUTHORS
COPYRIGHT
LICENSE
perlartistic - the Perl Artistic License
- SYNOPSIS
- DESCRIPTION
- The "Artistic License"
- Preamble
- Definitions
"Package", "Standard Version", "Copyright Holder", "You", "Reasonable copying fee", "Freely Available"
- Conditions
a), b), c), d), a), b), c), d)
perlgpl - the GNU General Public License, version 1
SYNOPSIS
DESCRIPTION
GNU GENERAL PUBLIC LICENSE
perlaix - Perl version 5 on IBM AIX (UNIX) systems
- DESCRIPTION
Compiling Perl 5 on AIX
Supported Compilers
Incompatibility with AIX Toolbox lib gdbm
Perl 5 was successfully compiled and tested on:
Building Dynamic Extensions on AIX
Using Large Files with Perl
Threaded Perl
64-bit Perl
Long doubles
Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/32-bit)
Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (32-bit)
Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (threaded/64-bit)
Recommended Options AIX 5.1/5.2/5.3/6.1 and 7.1 (64-bit)
Compiling Perl 5 on AIX 7.1.0
Compiling Perl 5 on older AIX versions up to 4.3.3
OS level
Building Dynamic Extensions on AIX < 5L
The IBM ANSI C Compiler
The usenm option
Using GNU's gcc for building Perl
Using Large Files with Perl < 5L
Threaded Perl < 5L
64-bit Perl < 5L
AIX 4.2 and extensions using C++ with statics
AUTHORS
perlamiga - Perl under AmigaOS 4.1
- NOTE
- SYNOPSIS
- DESCRIPTION
- Prerequisites for running Perl 5.22.1 under AmigaOS 4.1
AmigaOS 4.1 update 6 with all updates applied as of 9th October 2013, newlib.library version 53.28 or greater, AmigaOS SDK, abc-shell
- Starting Perl programs under AmigaOS 4.1
- Limitations of Perl under AmigaOS 4.1
Nested Piped programs can crash when run from older abc-shells, Incorrect or unexpected command line unescaping, Starting subprocesses via open has limitations, If you find any other limitations or bugs then let me know
- INSTALLATION
- Amiga Specific Modules
Amiga::ARexx
Amiga::Exec
- BUILDING
- CHANGES
August 2015, Port to Perl 5.22, Add handling of NIL: to afstat(), 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 flock() emulation using IDOS->LockRecord thanks to Tony Cook for the suggestion, Fix issue where kill was using the wrong kind of process ID, 27th November 2013, 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, 20th November 2013, Configured to use SDK:Local/C/perl to start standard scripts, Added Amiga::Exec module with support for Wait() and AmigaOS signal numbers, 10th October 13
SEE ALSO
perlandroid - Perl under Android
- SYNOPSIS
- DESCRIPTION
- Cross-compilation
Get the Android Native Development Kit (NDK)
Determine the architecture you'll be cross-compiling for
Set up a standalone toolchain
adb or ssh?
Configure and beyond
- Native Builds
CCTools
Termux
AUTHOR
perlbs2000 - building and installing Perl for BS2000.
- SYNOPSIS
- DESCRIPTION
gzip on BS2000
bison on BS2000
Unpacking Perl Distribution on BS2000
Compiling Perl on BS2000
Testing Perl on BS2000
Installing Perl on BS2000
Using Perl in the Posix-Shell of BS2000
Using Perl in "native" BS2000
Floating point anomalies on BS2000
Using PerlIO and different encodings on ASCII and EBCDIC partitions
- AUTHORS
- SEE ALSO
Mailing list
HISTORY
perlcygwin - Perl for Cygwin
- SYNOPSIS
- PREREQUISITES FOR COMPILING PERL ON CYGWIN
- Cygwin = GNU+Cygnus+Windows (Don't leave UNIX without it)
- Cygwin Configuration
PATH
, nroff
- CONFIGURE PERL ON CYGWIN
- Stripping Perl Binaries on Cygwin
- Optional Libraries for Perl on Cygwin
-lcrypt
,-lgdbm_compat
(use GDBM_File
),-ldb
(use DB_File
),cygserver
(use IPC::SysV
),-lutil
- Configure-time Options for Perl on Cygwin
-Uusedl
,-Dusemymalloc
,-Uuseperlio
,-Dusemultiplicity
,-Uuse64bitint
,-Duselongdouble
,-Uuseithreads
,-Duselargefiles
,-Dmksymlinks
- MAKE ON CYGWIN
- TEST ON CYGWIN
File Permissions on Cygwin
NDBM_File and ODBM_File do not work on FAT filesystems
fork()
failures in io_* tests- Specific features of the Cygwin port
- Script Portability on Cygwin
Pathnames, Text/Binary, PerlIO, .exe, Cygwin vs. Windows process ids, Cygwin vs. Windows errors, rebase errors on fork or system, Miscellaneous
- Prebuilt methods:
Cwd::cwd
,Cygwin::pid_to_winpid
,Cygwin::winpid_to_pid
,Cygwin::win_to_posix_path
,Cygwin::posix_to_win_path
,Cygwin::mount_table()
,Cygwin::mount_flags
,Cygwin::is_binmount
,Cygwin::sync_winenv
- INSTALL PERL ON CYGWIN
- MANIFEST ON CYGWIN
Documentation, Build, Configure, Make, Install, Tests, Compiled Perl Source, Compiled Module Source, Perl Modules/Scripts, Perl Module Tests
BUGS ON CYGWIN
AUTHORS
HISTORY
perlfreebsd - Perl version 5 on FreeBSD systems
- DESCRIPTION
FreeBSD core dumps from readdir_r with ithreads
$^X
doesn't always contain a full path in FreeBSD
AUTHOR
perlhaiku - Perl version 5.10+ on Haiku
DESCRIPTION
BUILD AND INSTALL
KNOWN PROBLEMS
CONTACT
perlhpux - Perl version 5 on Hewlett-Packard Unix (HP-UX) systems
- DESCRIPTION
Using perl as shipped with HP-UX
Using perl from HP's porting centre
Other prebuilt perl binaries
Compiling Perl 5 on HP-UX
PA-RISC
PA-RISC 1.0
PA-RISC 1.1
PA-RISC 2.0
Portability Between PA-RISC Versions
Itanium Processor Family (IPF) and HP-UX
Itanium, Itanium 2 & Madison 6
HP-UX versions
Building Dynamic Extensions on HP-UX
The HP ANSI C Compiler
The GNU C Compiler
Using Large Files with Perl on HP-UX
Threaded Perl on HP-UX
64-bit Perl on HP-UX
Oracle on HP-UX
GDBM and Threads on HP-UX
NFS filesystems and utime(2) on HP-UX
HP-UX Kernel Parameters (maxdsiz) for Compiling Perl
nss_delete core dump from op/pwent or op/grent
error: pasting ")" and "l" does not give a valid preprocessing token
Redeclaration of "sendpath" with a different storage class specifier
Miscellaneous
AUTHOR
perlhurd - Perl version 5 on Hurd
- DESCRIPTION
Known Problems with Perl on Hurd
AUTHOR
perlirix - Perl version 5 on Irix systems
- DESCRIPTION
Building 32-bit Perl in Irix
Building 64-bit Perl in Irix
About Compiler Versions of Irix
Linker Problems in Irix
Malloc in Irix
Building with threads in Irix
Irix 5.3
AUTHOR
perllinux - Perl version 5 on Linux systems
- DESCRIPTION
Deploying Perl on Linux
Experimental Support for Sun Studio Compilers for Linux OS
AUTHOR
perlmacosx - Perl under Mac OS X
- SYNOPSIS
- DESCRIPTION
Installation Prefix
SDK support
Universal Binary support
64-bit PPC support
libperl and Prebinding
Updating Apple's Perl
Known problems
Cocoa
Starting From Scratch
AUTHOR
DATE
perlopenbsd - Perl version 5 on OpenBSD systems
- DESCRIPTION
OpenBSD core dumps from getprotobyname_r and getservbyname_r with ithreads
AUTHOR
perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT.
- SYNOPSIS
- DESCRIPTION
- Target
- Other OSes
- Prerequisites
EMX, RSX, HPFS, pdksh
Starting Perl programs under OS/2 (and DOS and...)
Starting OS/2 (and DOS) programs under Perl
- Frequently asked questions
- "It does not work"
- I cannot run external programs
- I cannot embed perl into my program, or use perl.dll from my program.
Is your program EMX-compiled with
-Zmt -Zcrtdll
?, Did you use ExtUtils::Embed?
``
and pipe-open
do not work under DOSCannot start
find.exe "pattern" file
- INSTALLATION
- Automatic binary installation
PERL_BADLANG
,PERL_BADFREE
, Config.pm- 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 .INF format, Pdksh
Warning
- Accessing documentation
OS/2 .INF file
Plain text
Manpages
HTML
GNU
info
filesPDF files
LaTeX
docs- BUILD
- The short story
- Prerequisites
- Getting perl source
- Application of the patches
- Hand-editing
- Making
- Testing
A lot of
bad free
, Process terminated by SIGTERM/SIGINT, op/fs.t, 18, 25, op/stat.t
Installing the built perl
a.out
-style build- Building a binary distribution
- Building custom .EXE files
Making executables with a custom collection of statically loaded extensions
Making executables with a custom search-paths
- Build FAQ
Some
/
became\
in pdksh'errno'
- unresolved externalProblems with tr or sed
Some problem (forget which ;-)
Library ... not found
Segfault in make
op/sprintf test failure
- Specific (mis)features of OS/2 port
- setpriority, getpriority
- system()
- extproc on the first line
- Additional modules:
- Prebuilt methods:
File::Copy::syscopy
,DynaLoader::mod2fname
,Cwd::current_drive()
,
Cwd::sys_chdir(name)
,Cwd::change_drive(name)
,Cwd::sys_is_absolute(name)
,Cwd::sys_is_rooted(name)
,Cwd::sys_is_relative(name)
,Cwd::sys_cwd(name)
,Cwd::sys_abspath(name, dir)
,Cwd::extLibpath([type])
,Cwd::extLibpath_set( path [, type ] )
,OS2::Error(do_harderror,do_exception)
,OS2::Errors2Drive(drive)
, OS2::SysInfo(), OS2::BootDrive(),OS2::MorphPM(serve)
,OS2::UnMorphPM(serve)
,OS2::Serve_Messages(force)
,OS2::Process_Messages(force [, cnt])
,OS2::_control87(new,mask)
, OS2::get_control87(),OS2::set_control87_em(new=MCW_EM,mask=MCW_EM)
,OS2::DLLname([how [, \&xsub]])
- Prebuilt variables:
$OS2::emx_rev
,$OS2::emx_env
,$OS2::os_ver
,$OS2::is_aout
,$OS2::can_fork
,$OS2::nsyserror
- Misfeatures
- Modifications
popen
,tmpnam
,tmpfile
,ctermid
,stat
,mkdir
,rmdir
,flock
- Identifying DLLs
- Centralized management of resources
HAB
,HMQ
, Treating errors reported by OS/2 API,CheckOSError(expr)
,CheckWinError(expr)
,SaveWinError(expr)
,SaveCroakWinError(expr,die,name1,name2)
,WinError_2_Perl_rc
,FillWinError
,FillOSError(rc)
, Loading DLLs and ordinals in DLLs
- Perl flavors
perl.exe
perl_.exe
perl__.exe
perl___.exe
Why strange names?
Why dynamic linking?
Why chimera build?
- ENVIRONMENT
PERLLIB_PREFIX
PERL_BADLANG
PERL_BADFREE
PERL_SH_DIR
USE_PERL_FLOCK
TMP
orTEMP
- Evolution
- Text-mode filehandles
- Priorities
- DLL name mangling: pre 5.6.2
- DLL name mangling: 5.6.2 and beyond
Global DLLs, specific DLLs,
BEGINLIBPATH
andENDLIBPATH
, . fromLIBPATH
- DLL forwarder generation
- Threading
- Calls to external programs
- Memory allocation
- Threads
COND_WAIT
, os2.c
BUGS
AUTHOR
SEE ALSO
perlos390 - building and installing Perl for z/OS (previously called OS/390)
- SYNOPSIS
- DESCRIPTION
- Tools
- Building a 64-bit Dynamic ASCII Perl
- Building a 64-bit Dynamic EBCDIC Perl
- Setup and utilities for Perl on OS/390
- Useful files for trouble-shooting
- Build Anomalies with Perl on OS/390
- Testing Anomalies with Perl on OS/390
- Usage Hints for Perl on z/OS
- Modules and Extensions for Perl on z/OS (Static Only)
- Running Perl on z/OS
For ASCII Only:, For ASCII or EBCDIC:
AUTHORS
OTHER SITES
HISTORY
perlos400 - Perl version 5 on OS/400
- DESCRIPTION
Compiling Perl for OS/400 PASE
Installing Perl in OS/400 PASE
Using Perl in OS/400 PASE
Known Problems
Perl on ILE
AUTHORS
perlplan9 - Plan 9-specific documentation for Perl
- DESCRIPTION
Invoking Perl
What's in Plan 9 Perl
What's not in Plan 9 Perl
Perl5 Functions not currently supported in Plan 9 Perl
Signals in Plan 9 Perl
- COMPILING AND INSTALLING PERL ON PLAN 9
Installing Perl Documentation on Plan 9
BUGS
Revision date
AUTHOR
perlqnx - Perl version 5 on QNX
- DESCRIPTION
- Required Software for Compiling Perl on QNX4
/bin/sh, ar, nm, cpp, make
- Outstanding Issues with Perl on QNX4
- QNX auxiliary files
qnx/ar, qnx/cpp
Outstanding issues with perl under QNX6
Cross-compilation
AUTHOR
perlriscos - Perl version 5 for RISC OS
DESCRIPTION
BUILD
AUTHOR
perlsolaris - Perl version 5 on Solaris systems
- DESCRIPTION
Solaris Version Numbers
- RESOURCES
Solaris FAQ, Precompiled Binaries, Solaris Documentation
- SETTING UP
File Extraction Problems on Solaris
Compiler and Related Tools on Solaris
Environment for Compiling perl on Solaris
- RUN CONFIGURE
64-bit perl on Solaris
Threads in perl on Solaris
Malloc Issues with perl on Solaris
- MAKE PROBLEMS
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
- MAKE TEST
op/stat.t test 4 in Solaris
nss_delete core dump from op/pwent or op/grent
- CROSS-COMPILATION
- PREBUILT BINARIES OF PERL FOR SOLARIS
- RUNTIME ISSUES FOR PERL ON SOLARIS
Limits on Numbers of Open Files on Solaris
- SOLARIS-SPECIFIC MODULES
- SOLARIS-SPECIFIC PROBLEMS WITH MODULES
Proc::ProcessTable on Solaris
BSD::Resource on Solaris
Net::SSLeay on Solaris
SunOS 4.x
AUTHOR
perlsynology - Perl 5 on Synology DSM systems
- DESCRIPTION
- Setting up the build environment
- Compiling Perl 5
- Known problems
Error message "No error definitions found", ext/DynaLoader/t/DynaLoader.t
Smoke testing Perl
Adding libraries
REVISION
AUTHOR
perltru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems
- DESCRIPTION
Compiling Perl 5 on Tru64
Using Large Files with Perl on Tru64
Threaded Perl on Tru64
Long Doubles on Tru64
DB_File tests failing on Tru64
64-bit Perl on Tru64
Warnings about floating-point overflow when compiling Perl on Tru64
Testing Perl on Tru64
ext/ODBM_File/odbm Test Failing With Static Builds
Perl Fails Because Of Unresolved Symbol sockatmark
read_cur_obj_info: bad file magic number
AUTHOR
perlvms - VMS-specific documentation for Perl
- DESCRIPTION
- Installation
- Organization of Perl Images
Core Images
Perl Extensions
Installing static extensions
Installing dynamic extensions
- File specifications
Syntax
Filename Case
Symbolic Links
Wildcard expansion
Pipes
- PERL5LIB and PERLLIB
- The Perl Forked Debugger
- PERL_VMS_EXCEPTION_DEBUG
- Command line
- I/O redirection and backgrounding
- Command line switches
-i, -S, -u
- 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
- Perl variables
%ENV
, CRTL_ENV, CLISYM_[LOCAL], Any other string, $!, $^E, $?, $|- Standard modules with VMS-specific differences
SDBM_File
Revision date
AUTHOR
perlvos - Perl for Stratus OpenVOS
- SYNOPSIS
- BUILDING PERL FOR OPENVOS
- INSTALLING PERL IN OPENVOS
- USING PERL IN OPENVOS
Restrictions of Perl on OpenVOS
TEST STATUS
SUPPORT STATUS
AUTHOR
LAST UPDATE
perlwin32 - Perl under Windows
- SYNOPSIS
- DESCRIPTION
<https://osdn.net/projects/mingw/>, <https://mingw-w64.org>
- Setting Up Perl on Windows
Make, Command Shell, Microsoft Visual C++, Microsoft Visual C++ 2015-2022 Community Edition, Microsoft C++ Build Tools, GCC, Intel C++ Compiler
- Building
- Testing Perl on Windows
- Installation of Perl on Windows
- Usage Hints for Perl on Windows
Environment Variables, File Globbing, Using perl from the command line, Building Extensions, Command-line Wildcard Expansion, Notes on 64-bit Windows
Running Perl Scripts
Miscellaneous Things
- BUGS AND CAVEATS
- ACKNOWLEDGEMENTS
- AUTHORS
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>
SEE ALSO
HISTORY
perlboot - Links to information on object-oriented programming in Perl
DESCRIPTION
perlbot - Links to information on object-oriented programming in Perl
DESCRIPTION
perlrepository - Links to current information on the Perl source repository
DESCRIPTION
perltodo - Link to the Perl to-do list
DESCRIPTION
perltooc - Links to information on object-oriented programming in Perl
DESCRIPTION
perltoot - Links to information on object-oriented programming in Perl
DESCRIPTION
Pragma Documentation
attributes - get/set subroutine or variable attributes
- SYNOPSIS
- DESCRIPTION
- What import does
- Built-in Attributes
lvalue, method, prototype(..), const, shared
- Available Subroutines
get, reftype
- Package-specific Attribute Handling
FETCH_type_ATTRIBUTES, MODIFY_type_ATTRIBUTES
Syntax of Attribute Lists
- EXPORTS
Default exports
Available exports
Export tags defined
EXAMPLES
MORE EXAMPLES
SEE ALSO
autodie - Replace functions with ones that succeed or die with lexical scope
- SYNOPSIS
- DESCRIPTION
- EXCEPTIONS
- CATEGORIES
- FUNCTION SPECIFIC NOTES
print
flock
system/exec
- GOTCHAS
- DIAGNOSTICS
:void cannot be used with lexical scope, No user hints defined for
%s
- Tips and Tricks
Importing autodie into another namespace than "caller"
- BUGS
autodie and string eval
REPORTING BUGS
FEEDBACK
AUTHOR
LICENSE
SEE ALSO
ACKNOWLEDGEMENTS
autodie::Scope::Guard - Wrapper class for calling subs at end of scope
- SYNOPSIS
- DESCRIPTION
Methods
AUTHOR
LICENSE
autodie::Scope::GuardStack - Hook stack for managing scopes via %^H
- SYNOPSIS
- DESCRIPTION
Methods
AUTHOR
LICENSE
autodie::Util - Internal Utility subroutines for autodie and Fatal
- SYNOPSIS
- DESCRIPTION
Methods
AUTHOR
LICENSE
autodie::exception - Exceptions from autodying functions.
- SYNOPSIS
- DESCRIPTION
Common Methods
Advanced methods
SEE ALSO
LICENSE
AUTHOR
autodie::exception::system - Exceptions from autodying system().
SYNOPSIS
DESCRIPTION
stringify
LICENSE
AUTHOR
autodie::hints - Provide hints about user subroutines to autodie
- SYNOPSIS
- DESCRIPTION
Introduction
What are hints?
Example hints
- Manually setting hints from within your program
- Adding hints to your module
- Insisting on hints
- Diagnostics
Attempts to set_hints_for unidentifiable subroutine, fail hints cannot be provided with either scalar or list hints for
%s
,%s
hint missing for%s
ACKNOWLEDGEMENTS
AUTHOR
LICENSE
SEE ALSO
autodie::skip - Skip a package when throwing autodie exceptions
SYNPOSIS
DESCRIPTION
AUTHOR
LICENSE
SEE ALSO
autouse - postpone load of modules until a function is used
SYNOPSIS
DESCRIPTION
WARNING
AUTHOR
SEE ALSO
base - Establish an ISA relationship with base classes at compile time
- SYNOPSIS
- DESCRIPTION
- DIAGNOSTICS
Base class package "%s" is empty, Class 'Foo' tried to inherit from itself
HISTORY
CAVEATS
SEE ALSO
bigfloat - transparent big floating point number support for Perl
- SYNOPSIS
- DESCRIPTION
- Options
a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, v or version
- Math Library
- Method calls
- Methods
inf(), NaN(), e, PI, bexp(), bpi(), accuracy(), precision(), round_mode(), div_scale(), upgrade(), downgrade(), in_effect()
- CAVEATS
Hexadecimal, octal, and binary floating point literals, Operator vs literal overloading, Ranges, in_effect(), hex()/oct()
- EXAMPLES
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
bigint - transparent big integer support for Perl
- SYNOPSIS
- DESCRIPTION
- use integer vs. use bigint
- Options
a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, v or version
- Math Library
- Method calls
- Methods
inf(), NaN(), e, PI, bexp(), bpi(), accuracy(), precision(), round_mode(), div_scale(), in_effect()
- CAVEATS
Hexadecimal, octal, and binary floating point literals, Operator vs literal overloading, Ranges, in_effect(), hex()/oct()
- EXAMPLES
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
bignum - transparent big number support for Perl
- SYNOPSIS
- DESCRIPTION
- Literal numeric constants
- Upgrading and downgrading
- Overloading
- Options
a or accuracy, p or precision, l, lib, try, or only, hex, oct, v or version
- Math Library
- Method calls
- Methods
inf(), NaN(), e, PI, bexp(), bpi(), accuracy(), precision(), round_mode(), div_scale(), upgrade(), downgrade(), in_effect()
- CAVEATS
The upgrade() and downgrade() methods, Hexadecimal, octal, and binary floating point literals, Operator vs literal overloading, Ranges, in_effect(), hex()/oct()
- EXAMPLES
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
bigrat - transparent big rational number support for Perl
- SYNOPSIS
- DESCRIPTION
- Options
a or accuracy, p or precision, t or trace, l, lib, try, or only, hex, oct, v or version
- Math Library
- Method calls
- Methods
inf(), NaN(), e, PI, bexp(), bpi(), accuracy(), precision(), round_mode(), div_scale(), in_effect()
- CAVEATS
Hexadecimal, octal, and binary floating point literals, Operator vs literal overloading, Ranges, in_effect(), hex()/oct()
- EXAMPLES
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
blib - Use MakeMaker's uninstalled version of a package
SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
builtin - Perl pragma to import built-in utility functions
- SYNOPSIS
- DESCRIPTION
Lexical Import
Version Bundles
- FUNCTIONS
true
false
is_bool
inf
nan
weaken
unweaken
is_weak
blessed
refaddr
reftype
created_as_string
created_as_number
stringify
ceil
floor
indexed
trim
is_tainted
export_lexically
load_module
SEE ALSO
bytes - Perl pragma to expose the individual bytes of characters
NOTICE
SYNOPSIS
DESCRIPTION
LIMITATIONS
SEE ALSO
charnames - access to Unicode character names and named character sequences; also define character names
SYNOPSIS
DESCRIPTION
LOOSE MATCHES
ALIASES
CUSTOM ALIASES
charnames::string_vianame(name)
charnames::vianame(name)
charnames::viacode(code)
CUSTOM TRANSLATORS
BUGS
constant - Perl pragma to declare constants
- SYNOPSIS
- DESCRIPTION
- NOTES
List constants
Defining multiple constants at once
Magic constants
TECHNICAL NOTES
CAVEATS
SEE ALSO
BUGS
AUTHORS
COPYRIGHT & LICENSE
deprecate - Perl pragma for deprecating the inclusion of a module in core
- SYNOPSIS
- DESCRIPTION
Important Caveat
EXPORT
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
diagnostics, splain - produce verbose warning diagnostics
- SYNOPSIS
- DESCRIPTION
The
diagnostics
PragmaThe splain Program
EXAMPLES
INTERNALS
BUGS
AUTHOR
encoding - allows you to write your script in non-ASCII and non-UTF-8
- WARNING
- SYNOPSIS
- DESCRIPTION
use encoding ['ENCNAME'] ;
,use encoding ENCNAME, Filter=>1;
,no encoding;
- OPTIONS
Setting
STDIN
and/orSTDOUT
individuallyThe
:locale
sub-pragma- CAVEATS
- SIDE EFFECTS
- DO NOT MIX MULTIPLE ENCODINGS
- Prior to Perl v5.22
- Prior to Encode version 1.87
- Prior to Perl v5.8.1
"NON-EUC" doublebyte encodings,
tr///
, Legend of characters above
- EXAMPLE - Greekperl
- BUGS
Thread safety, Can't be used by more than one module in a single program, Other modules using
STDIN
andSTDOUT
get the encoded stream, literals in regex that are longer than 127 bytes, EBCDIC,format
, See also "CAVEATS" in encoding
HISTORY
SEE ALSO
encoding::warnings - Warn on implicit encoding conversions
- VERSION
- NOTICE
- SYNOPSIS
- DESCRIPTION
- Overview of the problem
- Detecting the problem
- Solving the problem
Upgrade both sides to unicode-strings, Downgrade both sides to byte-strings, Specify the encoding for implicit byte-string upgrading, PerlIO layers for STDIN and STDOUT, Literal conversions, Implicit upgrading for byte-strings
CAVEATS
SEE ALSO
AUTHORS
COPYRIGHT
experimental - Experimental features made easy
- VERSION
- SYNOPSIS
- DESCRIPTION
args_array_with_signatures
- allow@_
to be used in signatured subs,array_base
- allow the use of$[
to change the starting index of@array
,autoderef
- allow push, each, keys, and other built-ins on references,bitwise
- allow the new stringwise bit operators,builtin
- allow the use of the functions in the builtin:: namespace,const_attr
- allow the :const attribute on subs,declared_refs
- enables aliasing via assignment to references,defer
- enables the use of defer blocks,extra_paired_delimiters
- enables the use of more paired string delimiters than the traditional four,< >
,( )
,{ }
, and[ ]
,for_list
- allows iterating over multiple values at a time withfor
,isa
- allow the use of theisa
infix operator,lexical_topic
- allow the use of lexical$_
viamy $_
,lexical_subs
- allow the use of lexical subroutines,postderef
- allow the use of postfix dereferencing expressions,postderef_qq
- allow the use of postfix dereferencing expressions inside interpolating strings,re_strict
- enables strict mode in regular expressions,refaliasing
- allow aliasing via\$x = \$y
,regex_sets
- allow extended bracketed character classes in regexps,signatures
- allow subroutine signatures (for named arguments),smartmatch
- allow the use of~~
,switch
- allow the use of~~
, given, and when,try
- allow the use oftry
andcatch
,win32_perlio
- allows the use of the :win32 IO layerOrdering matters
Disclaimer
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
feature - Perl pragma to enable new features
- SYNOPSIS
- DESCRIPTION
Lexical effect
no feature
- AVAILABLE FEATURES
The 'say' feature
The 'state' feature
The 'switch' feature
The 'unicode_strings' feature
The 'unicode_eval' and 'evalbytes' features
The 'current_sub' feature
The 'array_base' feature
The 'fc' feature
The 'lexical_subs' feature
The 'postderef' and 'postderef_qq' features
The 'signatures' feature
The 'refaliasing' feature
The 'bitwise' feature
The 'declared_refs' feature
The 'isa' feature
The 'indirect' feature
The 'multidimensional' feature
The 'bareword_filehandles' feature
The 'try' feature
The 'defer' feature
The 'extra_paired_delimiters' feature
The 'module_true' feature
The 'class' feature
- FEATURE BUNDLES
- IMPLICIT LOADING
- CHECKING FEATURES
feature_enabled($feature), feature_enabled($feature,
$depth
), features_enabled(), features_enabled($depth), feature_bundle(), feature_bundle($depth)
fields - compile-time class fields
- SYNOPSIS
- DESCRIPTION
new, phash
SEE ALSO
filetest - Perl pragma to control the filetest permission operators
- SYNOPSIS
- DESCRIPTION
Consider this carefully
The "access" sub-pragma
Limitation with regard to
_
if - use a Perl module if a condition holds
- SYNOPSIS
- DESCRIPTION
use if
no if
BUGS
SEE ALSO
AUTHOR
COPYRIGHT AND LICENCE
integer - Perl pragma to use integer arithmetic instead of floating point
SYNOPSIS
DESCRIPTION
less - perl pragma to request less of something
- SYNOPSIS
- DESCRIPTION
- FOR MODULE AUTHORS
BOOLEAN = less->of( FEATURE )
FEATURES = less->of()
- CAVEATS
This probably does nothing, This works only on 5.10+
lib - manipulate @INC at compile time
- SYNOPSIS
- DESCRIPTION
Adding directories to
@INC
Deleting directories from
@INC
Restoring original
@INC
CAVEATS
NOTES
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
locale - Perl pragma to use or avoid POSIX locales for built-in operations
SYNOPSIS
DESCRIPTION
mro - Method Resolution Order
- SYNOPSIS
- DESCRIPTION
- OVERVIEW
- The C3 MRO
What is C3?
How does C3 work
- Functions
mro::get_linear_isa($classname[,
$type
])mro::set_mro ($classname,
$type
)mro::get_mro($classname)
mro::get_isarev($classname)
mro::is_universal($classname)
mro::invalidate_all_method_caches()
mro::method_changed_in($classname)
mro::get_pkg_gen($classname)
next::method
next::can
maybe::next::method
- SEE ALSO
- The original Dylan paper
"/citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.19.3910&rep=rep1 &type=pdf" in http:
- Python 2.3 MRO
- Class::C3
Class::C3
AUTHOR
ok - Alternative to Test::More::use_ok
SYNOPSIS
DESCRIPTION
CC0 1.0 Universal
open - perl pragma to set default PerlIO layers for input and output
SYNOPSIS
DESCRIPTION
IMPLEMENTATION DETAILS
SEE ALSO
ops - Perl pragma to restrict unsafe operations when compiling
SYNOPSIS
DESCRIPTION
SEE ALSO
overload - Package for overloading Perl operations
- SYNOPSIS
- DESCRIPTION
- Fundamentals
- Overloadable Operations
not
,neg
,++
,--
, Assignments, Non-mutators with a mutator variant,int
, String, numeric, boolean, and regexp conversions, Iteration, File tests, Matching, Dereferencing, Special- Magic Autogeneration
- Special Keys for use overload
defined, but FALSE,
undef
, TRUE- How Perl Chooses an Operator Implementation
- Losing Overloading
- Inheritance and Overloading
Method names in the
use overload
directive, Overloading of an operation is inherited by derived classes- Run-time Overloading
- Public Functions
overload::StrVal(arg), overload::Overloaded(arg), overload::Method(obj,op)
- Overloading Constants
integer, float, binary, q, qr
- IMPLEMENTATION
- COOKBOOK
Two-face Scalars
Two-face References
Symbolic Calculator
Really Symbolic Calculator
- AUTHOR
- SEE ALSO
- DIAGNOSTICS
Odd number of arguments for overload::constant, '%s' is not an overloadable type, '%s' is not a code reference, overload arg '%s' is invalid
BUGS AND PITFALLS
overloading - perl pragma to lexically control overloading
- SYNOPSIS
- DESCRIPTION
no overloading
,no overloading @ops
,use overloading
,use overloading @ops
parent - Establish an ISA relationship with base classes at compile time
- SYNOPSIS
- DESCRIPTION
- HISTORY
- CAVEATS
- SEE ALSO
base, parent::versioned
AUTHORS AND CONTRIBUTORS
MAINTAINER
LICENSE
re - Perl pragma to alter regular expression behaviour
- SYNOPSIS
- DESCRIPTION
- 'taint' mode
- 'eval' mode
- 'strict' mode
- '/flags' mode
- 'debug' mode
- 'Debug' mode
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
- Exportable Functions
is_regexp($ref), regexp_pattern($ref), regname($name,$all), regnames($all), regnames_count(), 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
SEE ALSO
sigtrap - Perl pragma to enable simple signal handling
- SYNOPSIS
- DESCRIPTION
- OPTIONS
- SIGNAL HANDLERS
stack-trace, die, handler your-handler
- SIGNAL LISTS
normal-signals, error-signals, old-interface-signals
- OTHER
untrapped, any, signal, number
EXAMPLES
sort - perl pragma to control sort() behaviour
SYNOPSIS
DESCRIPTION
CAVEATS
stable - Experimental features made easy, once we know they're stable
- VERSION
- SYNOPSIS
- DESCRIPTION
bitwise
- stable as of perl 5.22, available via stable 0.031,isa
- stable as of perl 5.32, available via stable 0.031,lexical_subs
- stable as of perl 5.22, available via stable 0.031,postderef
- stable as of perl 5.20, available via stable 0.031,const_attr
- stable as of perl 5.22, available via stable 0.032,for_list
- stable as of perl 5.36, available via stable 0.032
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
strict - Perl pragma to restrict unsafe constructs
- SYNOPSIS
- DESCRIPTION
strict refs
,strict vars
,strict subs
HISTORY
subs - Perl pragma to predeclare subroutine names
SYNOPSIS
DESCRIPTION
threads - Perl interpreter-based threads
- VERSION
- WARNING
- SYNOPSIS
- DESCRIPTION
$thr
= threads->create(FUNCTION, ARGS),$thr
->join(),$thr
->detach(), threads->detach(), threads->self(),$thr
->tid(), threads->tid(), "$thr", threads->object($tid), threads->yield(), threads->list(), threads->list(threads::all), threads->list(threads::running), threads->list(threads::joinable),$thr1
->equal($thr2), async BLOCK;,$thr
->error(),$thr
->_handle(), threads->_handle()- EXITING A THREAD
threads->exit(), threads->exit(status), die(), exit(status), use threads 'exit' => 'threads_only', threads->create({'exit' => 'thread_only'}, ...),
$thr
->set_thread_exit_only(boolean), threads->set_thread_exit_only(boolean)- THREAD STATE
$thr
->is_running(),$thr
->is_joinable(),$thr
->is_detached(), threads->is_detached()- THREAD CONTEXT
Explicit context
Implicit context
$thr
->wantarray()threads->wantarray()
- THREAD STACK SIZE
threads->get_stack_size();,
$size
=$thr
->get_stack_size();,$old_size
= threads->set_stack_size($new_size);, use threads ('stack_size' => VALUE);,$ENV
{'PERL5_ITHREADS_STACK_SIZE'}, threads->create({'stack_size' => VALUE}, FUNCTION, ARGS),$thr2
=$thr1
->create(FUNCTION, ARGS)- THREAD SIGNALLING
$thr
->kill('SIG...');- 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(SIZE) returned 22
- 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: ..
- 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
PERL_OLD_SIGNALS
(seeperl -V
), The environment variablePERL_SIGNALS
is set tounsafe
(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
REQUIREMENTS
SEE ALSO
AUTHOR
LICENSE
ACKNOWLEDGEMENTS
utf8 - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source code
- SYNOPSIS
- DESCRIPTION
- Utility functions
$num_octets = utf8::upgrade($string)
,$success = utf8::downgrade($string[, $fail_ok])
,utf8::encode($string)
,$success = utf8::decode($string)
,$unicode = utf8::native_to_unicode($code_point)
,$native = utf8::unicode_to_native($code_point)
,$flag = utf8::is_utf8($string)
,$flag = utf8::valid($string)
BUGS
SEE ALSO
vars - Perl pragma to predeclare global variable names
SYNOPSIS
DESCRIPTION
version - Perl extension for Version Objects
- SYNOPSIS
- DESCRIPTION
- TYPES OF VERSION OBJECTS
Decimal Versions, Dotted Decimal Versions
- DECLARING VERSIONS
How to convert a module from decimal to dotted-decimal
How to
declare()
a dotted-decimal version- PARSING AND COMPARING VERSIONS
- How to parse() a version
- How to check for a legal version string
is_lax()
,is_strict()
How to compare version objects
- OBJECT METHODS
is_alpha()
is_qv()
normal()
numify()
stringify()
- EXPORTED FUNCTIONS
qv()
is_lax()
is_strict()
AUTHOR
SEE ALSO
version::Internals - Perl extension for Version Objects
- DESCRIPTION
- WHAT IS A VERSION?
Decimal versions, Dotted-Decimal versions
- Decimal Versions
- Dotted-Decimal Versions
- Alpha Versions
- Regular Expressions for Version Parsing
$version::LAX
,$version::STRICT
, v1.234.5
- IMPLEMENTATION DETAILS
- Equivalence between Decimal and Dotted-Decimal Versions
- Quoting Rules
- What about v-strings?
- Version Object Internals
original, qv, alpha, version
Replacement UNIVERSAL::VERSION
- USAGE DETAILS
- Using modules that use version.pm
Decimal versions always work, Dotted-Decimal version work sometimes
- Object Methods
new(), qv(), Normal Form, Numification, Stringification, Comparison operators, Logical Operators
AUTHOR
SEE ALSO
vmsish - Perl pragma to control VMS-specific language features
- SYNOPSIS
- DESCRIPTION
vmsish status
,vmsish exit
,vmsish time
,vmsish hushed
warnings - Perl pragma to control optional warnings
- SYNOPSIS
- DESCRIPTION
- Default Warnings and Optional Warnings
- "Negative warnings"
- What's wrong with -w and $^W
- Controlling Warnings from the Command Line
-w , -W , -X
Backward Compatibility
Category Hierarchy
Fatal Warnings
Reporting Warnings from a Module
- FUNCTIONS
use warnings::register, warnings::enabled(), warnings::enabled($category), warnings::enabled($object), warnings::enabled_at_level($category,
$level
), warnings::fatal_enabled(), warnings::fatal_enabled($category), warnings::fatal_enabled($object), warnings::fatal_enabled_at_level($category,$level
), warnings::warn($message), warnings::warn($category,$message
), warnings::warn($object,$message
), warnings::warn_at_level($category,$level
,$message
), warnings::warnif($message), warnings::warnif($category,$message
), warnings::warnif($object,$message
), warnings::warnif_at_level($category,$level
,$message
), warnings::register_categories(@names)
warnings::register - warnings import function
SYNOPSIS
DESCRIPTION
Module Documentation
AnyDBM_File - provide framework for multiple DBMs
- SYNOPSIS
- DESCRIPTION
- DBM Comparisons
[0], [1], [2], [3]
SEE ALSO
App::Cpan - easily interact with CPAN from the command line
- SYNOPSIS
- DESCRIPTION
- Options
-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 ... ], -X
- Examples
- Environment variables
NONINTERACTIVE_TESTING, PERL_MM_USE_DEFAULT, CPAN_OPTS, CPANSCRIPT_LOGLEVEL, GIT_COMMAND
Methods
run( ARGS )
EXIT VALUES
TO DO
BUGS
SEE ALSO
SOURCE AVAILABILITY
CREDITS
AUTHOR
COPYRIGHT
App::Prove - Implements the prove command.
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
Class Methods
- Attributes
archive
,argv
,backwards
,blib
,color
,directives
,dry
,exec
,extensions
,failures
,comments
,formatter
,harness
,ignore_exit
,includes
,jobs
,lib
,merge
,modules
,parse
,plugins
,quiet
,really_quiet
,recurse
,rules
,show_count
,show_help
,show_man
,show_version
,shuffle
,state
,state_class
,taint_fail
,taint_warn
,test_args
,timer
,verbose
,warnings_fail
,warnings_warn
,tapversion
,trap
- PLUGINS
Sample Plugin
SEE ALSO
App::Prove::State - State storage for the prove command.
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
- Class Methods
store
,extensions
(optional),result_class
(optional)
- result_class
- extensions
- results
- commit
- Instance Methods
last
,failed
,passed
,all
,hot
,todo
,slow
,fast
,new
,old
,save
App::Prove::State::Result - Individual test suite results.
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
Class Methods
state_version
test_class
App::Prove::State::Result::Test - Individual test results.
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
Class Methods
Instance Methods
Archive::Tar - module for manipulations of tar archives
- SYNOPSIS
- DESCRIPTION
- Object Methods
Archive::Tar->new( [$file,
$compressed
] )- $tar->read ( $filename|$handle, [$compressed, {opt => 'val'}] )
limit, filter, md5, extract
- $tar->contains_file( $filename )
- $tar->extract( [@filenames] )
- $tar->extract_file( $file, [$extract_path] )
- $tar->list_files( [\@properties] )
- $tar->get_files( [@filenames] )
- $tar->get_content( $file )
- $tar->replace_content( $file, $content )
- $tar->rename( $file, $new_name )
- $tar->chmod( $file, $mode )
- $tar->chown( $file, $uname [, $gname] )
- $tar->remove (@filenamelist)
- $tar->clear
- $tar->write ( [$file, $compressed, $prefix] )
- $tar->add_files( @filenamelist )
- $tar->add_data ( $filename, $data, [$opthashref] )
FILE, HARDLINK, SYMLINK, CHARDEV, BLOCKDEV, DIR, FIFO, SOCKET
- $tar->error( [$BOOL] )
- $tar->setcwd( $cwd );
- Class Methods
Archive::Tar->create_archive($file,
$compressed
,@filelist
)- Archive::Tar->iter( $filename, [ $compressed, {opt => $val} ] )
- Archive::Tar->list_archive($file, $compressed, [\@properties])
- Archive::Tar->extract_archive($file, $compressed)
- $bool = Archive::Tar->has_io_string
- $bool = Archive::Tar->has_perlio
- $bool = Archive::Tar->has_zlib_support
- $bool = Archive::Tar->has_bzip2_support
- $bool = Archive::Tar->has_xz_support
- Archive::Tar->can_handle_compressed_files
- GLOBAL VARIABLES
- $Archive::Tar::FOLLOW_SYMLINK
- $Archive::Tar::CHOWN
- $Archive::Tar::CHMOD
- $Archive::Tar::SAME_PERMISSIONS
- $Archive::Tar::DO_NOT_USE_PREFIX
- $Archive::Tar::DEBUG
- $Archive::Tar::WARN
- $Archive::Tar::error
- $Archive::Tar::INSECURE_EXTRACT_MODE
- $Archive::Tar::HAS_PERLIO
- $Archive::Tar::HAS_IO_STRING
- $Archive::Tar::ZERO_PAD_NUMBERS
- Tuning the way RESOLVE_SYMLINK will works
none, speed (default), memory
$Archive::Tar::EXTRACT_BLOCK_SIZE
- FAQ
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?
- CAVEATS
- TODO
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
- SEE ALSO
The GNU tar specification, The PAX format specification
AUTHOR
ACKNOWLEDGEMENTS
COPYRIGHT
Archive::Tar::File - a subclass for in-memory extracted file from Archive::Tar
- SYNOPSIS
- DESCRIPTION
- Accessors
name, mode, uid, gid, size, mtime, chksum, type, linkname, magic, version, uname, gname, devmajor, devminor, prefix, raw
- Methods
Archive::Tar::File->new( file =>
$path
)Archive::Tar::File->new( data =>
$path
,$data
,$opt
)Archive::Tar::File->new( chunk =>
$chunk
)- $bool = $file->extract( [ $alternative_name ] )
- $path = $file->full_path
- $bool = $file->validate
- $bool = $file->has_content
- $content = $file->get_content
- $cref = $file->get_content_by_ref
- $bool = $file->replace_content( $content )
- $bool = $file->rename( $new_name )
- $bool = $file->chmod( $mode )
- $bool = $file->chown( $user [, $group])
- Convenience methods
$file
->is_file,$file
->is_dir,$file
->is_hardlink,$file
->is_symlink,$file
->is_chardev,$file
->is_blockdev,$file
->is_fifo,$file
->is_socket,$file
->is_longlink,$file
->is_label,$file
->is_unknown
Attribute::Handlers - Simpler definition of attribute handlers
- VERSION
- SYNOPSIS
- DESCRIPTION
[0], [1], [2], [3], [4], [5], [6], [7]
Typed lexicals
Type-specific attribute handlers
Non-interpretive attribute handlers
Phase-specific attribute handlers
Attributes as
tie
interfaces- EXAMPLES
- UTILITY FUNCTIONS
findsym
- DIAGNOSTICS
Bad attribute type: ATTR(%s)
,Attribute handler %s doesn't handle %s attributes
,Declaration of %s attribute in package %s may clash with future reserved word
,Can't have two ATTR specifiers on one subroutine
,Can't autotie a %s
,Internal error: %s symbol went missing
,Won't be able to apply END handler
AUTHOR
BUGS
COPYRIGHT AND LICENSE
AutoLoader - load subroutines only on demand
- SYNOPSIS
- DESCRIPTION
Subroutine Stubs
Using AutoLoader's AUTOLOAD Subroutine
Overriding AutoLoader's AUTOLOAD Subroutine
Package Lexicals
Not Using AutoLoader
AutoLoader vs. SelfLoader
Forcing AutoLoader to Load a Function
CAVEATS
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
AutoSplit - split a package for autoloading
- SYNOPSIS
- DESCRIPTION
$keep
,$check
,$modtime
Multiple packages
DIAGNOSTICS
AUTHOR
COPYRIGHT AND LICENSE
B - The Perl Compiler Backend
- SYNOPSIS
- DESCRIPTION
- OVERVIEW
- Utility Functions
- Functions Returning B::SV, B::AV, B::HV, and B::CV objects
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
- Functions for Examining the Symbol Table
walksymtable(SYMREF, METHOD, RECURSE, PREFIX)
- Functions Returning B::OP objects or for walking op trees
main_root, main_start, walkoptree(OP, METHOD), walkoptree_debug(DEBUG)
- Miscellaneous Utility Functions
ppname(OPNUM), hash(STR), cast_I32(I), minus_c, cstring(STR), perlstring(STR), safename(STR), class(OBJ), threadsv_names
- Exported utility variables
@optype
,@specialsv_name
- OVERVIEW OF CLASSES
- SV-RELATED CLASSES
- B::SV Methods
REFCNT, FLAGS, IsBOOL, object_2svref, TRUE, TRUE_nomg
- B::IV Methods
IV, IVX, UVX, int_value, needs64bits, packiv
- B::NV Methods
NV, NVX, COP_SEQ_RANGE_LOW, COP_SEQ_RANGE_HIGH
- B::RV Methods
RV
- B::PV Methods
PV, RV, PVX, CUR, LEN
- B::PVMG Methods
MAGIC, SvSTASH
- B::MAGIC Methods
MOREMAGIC, precomp, PRIVATE, TYPE, FLAGS, OBJ, PTR, REGEX
- B::INVLIST Methods
prev_index, is_offset, array_len, get_invlist_array
- B::PVLV Methods
TARGOFF, TARGLEN, TYPE, TARG
- B::BM Methods
USEFUL, PREVIOUS, RARE, TABLE
- B::REGEXP Methods
REGEX, precomp, qr_anoncv, compflags
- B::GV Methods
is_empty, NAME, SAFENAME, STASH, SV, IO, FORM, AV, HV, EGV, CV, CVGEN, LINE, FILE, FILEGV, GvREFCNT, FLAGS, GPFLAGS
- 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
- B::AV Methods
FILL, MAX, ARRAY, ARRAYelt
- B::CV Methods
STASH, START, ROOT, GV, FILE, DEPTH, PADLIST, OUTSIDE, OUTSIDE_SEQ, XSUB, XSUBANY, CvFLAGS, const_sv, NAME_HEK
- B::HV Methods
FILL, MAX, KEYS, RITER, NAME, ARRAY
- OP-RELATED CLASSES
- B::OP Methods
next, sibling, parent, name, ppaddr, desc, targ, type, opt, flags, private, spare
- B::UNOP Method
first
- B::UNOP_AUX Methods (since 5.22)
aux_list(cv), string(cv)
- B::BINOP Method
last
- B::LOGOP Method
other
- B::LISTOP Method
children
- B::PMOP Methods
pmreplroot, pmreplstart, pmflags, precomp, pmoffset, code_list, pmregexp
- B::SVOP Methods
sv, gv
- B::PADOP Method
padix
- B::PVOP Method
pv
- B::LOOP Methods
redoop, nextop, lastop
- B::COP Methods
label, stash, stashpv, stashoff (threaded only), file, cop_seq, line, warnings, io, hints, hints_hash
- B::METHOP Methods (Since Perl 5.22)
first, meth_sv
- PAD-RELATED CLASSES
- B::PADLIST Methods
MAX, ARRAY, ARRAYelt, NAMES, REFCNT, id, outid
- B::PADNAMELIST Methods
MAX, ARRAY, ARRAYelt, REFCNT
- 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
$B::overlay
AUTHOR
B::Concise - Walk Perl syntax tree, printing concise info about ops
- SYNOPSIS
- DESCRIPTION
- EXAMPLE
- OPTIONS
- Options for Opcode Ordering
-basic, -exec, -tree
- Options for Line-Style
-concise, -terse, -linenoise, -debug, -env
- Options for tree-specific formatting
-compact, -loose, -vt, -ascii
- Options controlling sequence numbering
-basen, -bigendian, -littleendian
- Other options
-src, -stash="somepackage", -main, -nomain, -nobanner, -banner, -banneris => subref
Option Stickiness
- ABBREVIATIONS
OP class abbreviations
OP flags abbreviations
- FORMATTING SPECIFICATIONS
- Special Patterns
(x(exec_text;basic_text)x), (*(text)*), (*(text1;text2)*), (?(text1#varText2)?), ~
- # Variables
#var, #varN, #Var, #addr, #arg, #class, #classsym, #coplabel, #exname, #extarg, #firstaddr, #flags, #flagval, #hints, #hintsval, #hyphseq, #label, #lastaddr, #name, #NAME, #next, #nextaddr, #noise, #private, #privval, #seq, #opt, #sibaddr, #svaddr, #svclass, #svval, #targ, #targarg, #targarglife, #typenum
- 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", \%B::Concise::)->()'
- Using B::Concise outside of the O framework
Example: Altering Concise Renderings
set_style()
set_style_standard($name)
add_style ()
add_callback ()
Running B::Concise::compile()
B::Concise::reset_sequence()
Errors
AUTHOR
B::Deparse - Perl compiler backend to produce perl code
- SYNOPSIS
- DESCRIPTION
- OPTIONS
-d, -fFILE, -l, -p, -P, -q, -sLETTERS, C, iNUMBER, T, vSTRING., -xLEVEL
- USING B::Deparse AS A MODULE
- Synopsis
- Description
- new
- ambient_pragmas
strict, $[, bytes, utf8, integer, re, warnings, hint_bits, warning_bits, %^H
coderef2text
BUGS
AUTHOR
B::Op_private - OP op_private flag definitions
- SYNOPSIS
- DESCRIPTION
%bits
%defines
%labels
%ops_using
B::Showlex - Show lexical variables used in functions or files
- SYNOPSIS
- DESCRIPTION
- EXAMPLES
OPTIONS
SEE ALSO
TODO
AUTHOR
B::Terse - Walk Perl syntax tree, printing terse info about ops
SYNOPSIS
DESCRIPTION
AUTHOR
B::Xref - Generates cross reference reports for Perl programs
- SYNOPSIS
- DESCRIPTION
i, &, s, r
- OPTIONS
-oFILENAME
,-r
,-d
,-D[tO]
BUGS
AUTHOR
Benchmark - benchmark running times of Perl code
- SYNOPSIS
- DESCRIPTION
- Methods
new, debug, iters
- Standard Exports
timeit(COUNT, CODE), timethis ( COUNT, CODE, [ TITLE, [ STYLE ]] ), timethese ( COUNT, CODEHASHREF, [ STYLE ] ), timediff ( T1, T2 ), timestr ( TIMEDIFF, [ STYLE, [ FORMAT ] ] )
- Optional Exports
clearcache ( COUNT ), clearallcache ( ), cmpthese ( COUNT, CODEHASHREF, [ STYLE ] ), cmpthese ( RESULTSHASHREF, [ STYLE ] ), countit(TIME, CODE), disablecache ( ), enablecache ( ), timesum ( T1, T2 )
:hireswallclock
- Benchmark Object
cpu_p, cpu_c, cpu_a, real, iters
NOTES
EXAMPLES
INHERITANCE
CAVEATS
SEE ALSO
AUTHORS
MODIFICATION HISTORY
CORE - Namespace for Perl's core routines
SYNOPSIS
DESCRIPTION
OVERRIDING CORE FUNCTIONS
AUTHOR
SEE ALSO
CPAN - query, download and build perl modules from CPAN sites
- SYNOPSIS
- DESCRIPTION
- CPAN::shell([$prompt, $command]) Starting Interactive Mode
Searching for authors, bundles, distribution files and modules,
get
,make
,test
,install
,clean
modules or distributions,readme
,perldoc
,look
module or distribution,ls
author,ls
globbing_expression,failed
, Persistence between sessions, Theforce
and thefforce
pragma, Lockfile, Signals- CPAN::Shell
- autobundle
- hosts
install_tested, is_tested
mkmyconfig
r [Module|/Regexp/]...
recent ***EXPERIMENTAL COMMAND***
recompile
report Bundle|Distribution|Module
smoke ***EXPERIMENTAL COMMAND***
upgrade [Module|/Regexp/]...
The four
CPAN::*
Classes: Author, Bundle, Module, DistributionIntegrating local directories
Redirection
Plugin support ***EXPERIMENTAL***
- CONFIGURATION
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
- Config Variables
o conf <scalar option>
,o conf <scalar option> <value>
,o conf <list option>
,o conf <list option> [shift|pop]
,o conf <list option> [unshift|push|splice] <list>
, interactive editing: o conf init [MATCH|LIST]- CPAN::anycwd($path): Note on config variable getcwd
cwd, getcwd, fastcwd, getdcwd, backtickcwd
- Note on the format of the urllist parameter
- The urllist parameter has CD-ROM support
- Maintaining the urllist parameter
- The requires and build_requires dependency declarations
- Configuration of the allow_installing_* parameters
- Configuration for individual distributions (Distroprefs)
- Filenames
- Fallback Data::Dumper and Storable
- Blueprint
- Language Specs
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]
- Processing Instructions
args [array], commandline, eexpect [hash], env [hash], expect [array]
Schema verification with
Kwalify
Example Distroprefs Files
- PROGRAMMER'S INTERFACE
expand($type,@things), expandany(@things), Programming Examples
- Methods in the other Classes
CPAN::Author::as_glimpse(), CPAN::Author::as_string(), CPAN::Author::email(), CPAN::Author::fullname(), CPAN::Author::name(), CPAN::Bundle::as_glimpse(), CPAN::Bundle::as_string(), CPAN::Bundle::clean(), CPAN::Bundle::contains(), CPAN::Bundle::force($method,@args), CPAN::Bundle::get(), CPAN::Bundle::inst_file(), CPAN::Bundle::inst_version(), CPAN::Bundle::uptodate(), CPAN::Bundle::install(), CPAN::Bundle::make(), CPAN::Bundle::readme(), CPAN::Bundle::test(), CPAN::Distribution::as_glimpse(), CPAN::Distribution::as_string(), CPAN::Distribution::author, CPAN::Distribution::pretty_id(), CPAN::Distribution::base_id(), CPAN::Distribution::clean(), CPAN::Distribution::containsmods(), CPAN::Distribution::cvs_import(), CPAN::Distribution::dir(), CPAN::Distribution::force($method,@args), CPAN::Distribution::get(), CPAN::Distribution::install(), CPAN::Distribution::isa_perl(), CPAN::Distribution::look(), CPAN::Distribution::make(), CPAN::Distribution::perldoc(), CPAN::Distribution::prefs(), CPAN::Distribution::prereq_pm(), CPAN::Distribution::readme(), CPAN::Distribution::reports(), CPAN::Distribution::read_yaml(), CPAN::Distribution::test(), CPAN::Distribution::uptodate(), CPAN::Index::force_reload(), CPAN::Index::reload(), CPAN::InfoObj::dump(), CPAN::Module::as_glimpse(), CPAN::Module::as_string(), CPAN::Module::clean(), CPAN::Module::cpan_file(), CPAN::Module::cpan_version(), CPAN::Module::cvs_import(), CPAN::Module::description(), CPAN::Module::distribution(), CPAN::Module::dslip_status(), CPAN::Module::force($method,@args), CPAN::Module::get(), CPAN::Module::inst_file(), CPAN::Module::available_file(), CPAN::Module::inst_version(), CPAN::Module::available_version(), CPAN::Module::install(), CPAN::Module::look(), CPAN::Module::make(), CPAN::Module::manpage_headline(), CPAN::Module::perldoc(), CPAN::Module::readme(), CPAN::Module::reports(), CPAN::Module::test(), CPAN::Module::uptodate(), CPAN::Module::userid()
Cache Manager
Bundles
- PREREQUISITES
- UTILITIES
- Finding packages and VERSION
- Debugging
o debug package.., o debug -package.., o debug all, o debug number
- Floppy, Zip, Offline Mode
- Basic Utilities for Programmers
has_inst($module), use_inst($module), has_usable($module), instance($module), frontend(), frontend($new_frontend)
- SECURITY
Cryptographically signed modules
- EXPORT
- ENVIRONMENT
- POPULATE AN INSTALLATION WITH LOTS OF MODULES
- WORKING WITH CPAN.pm BEHIND FIREWALLS
- Three basic types of firewalls
http firewall, ftp firewall, One-way visibility, SOCKS, IP Masquerade
Configuring lynx or ncftp for going through a firewall
- FAQ
1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19)
- COMPATIBILITY
OLD PERL VERSIONS
CPANPLUS
CPANMINUS
SECURITY ADVICE
BUGS
AUTHOR
LICENSE
TRANSLATIONS
SEE ALSO
CPAN::API::HOWTO - a recipe book for programming with CPAN.pm
- RECIPES
What distribution contains a particular module?
What modules does a particular distribution contain?
SEE ALSO
LICENSE
AUTHOR
CPAN::Debug - internal debugging for CPAN.pm
LICENSE
CPAN::Distroprefs -- read and match distroprefs
- SYNOPSIS
- DESCRIPTION
- INTERFACE
a CPAN::Distroprefs::Result object,
undef
, indicating that no prefs files remain to be found- RESULTS
Common
Errors
Successes
PREFS
LICENSE
CPAN::FirstTime - Utility for CPAN::Config file Initialization
SYNOPSIS
DESCRIPTION
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
LICENSE
CPAN::HandleConfig - internal configuration handling for CPAN.pm
CLASS->safe_quote ITEM
LICENSE
CPAN::Kwalify - Interface between CPAN.pm and Kwalify.pm
- SYNOPSIS
- DESCRIPTION
_validate($schema_name,
$data
,$file
,$doc
), yaml($schema_name)
AUTHOR
LICENSE
CPAN::Meta - the distribution metadata for a CPAN dist
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
new
create
load_file
load_yaml_string
load_json_string
load_string
save
meta_spec_version
effective_prereqs
should_index_file
should_index_package
features
feature
as_struct
as_string
- STRING DATA
- LIST DATA
- MAP DATA
- CUSTOM DATA
- BUGS
- SEE ALSO
- SUPPORT
Bugs / Feature Requests
Source Code
AUTHORS
CONTRIBUTORS
COPYRIGHT AND LICENSE
CPAN::Meta::Converter - Convert CPAN distribution metadata structures
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
new
convert
upgrade_fragment
BUGS
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::Feature - an optional feature provided by a CPAN distribution
- VERSION
- DESCRIPTION
- METHODS
new
identifier
description
prereqs
BUGS
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::History - history of CPAN Meta Spec changes
- VERSION
- DESCRIPTION
- HISTORY
Version 2
Version 1.4
Version 1.3
Version 1.2
Version 1.1
Version 1.0
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::History::Meta_1_0 - Version 1.0 metadata specification for META.yml
- PREFACE
- DESCRIPTION
- Format
- Fields
name, version, license, perl, gpl, lgpl, artistic, bsd, open_source, unrestricted, restrictive, distribution_type, requires, recommends, build_requires, conflicts, dynamic_config, generated_by
- Related Projects
DOAP
History
CPAN::Meta::History::Meta_1_1 - Version 1.1 metadata specification for META.yml
- PREFACE
- DESCRIPTION
- Format
- Fields
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
- Ingy's suggestions
short_description, description, maturity, author_id, owner_id, categorization, keyword, chapter_id, URL for further information, namespaces
History
CPAN::Meta::History::Meta_1_2 - Version 1.2 metadata specification for META.yml
- PREFACE
- SYNOPSIS
- DESCRIPTION
- FORMAT
- TERMINOLOGY
distribution, module
- VERSION SPECIFICATIONS
- HEADER
- FIELDS
- meta-spec
- name
- version
- abstract
- author
- license
perl, gpl, lgpl, artistic, bsd, open_source, unrestricted, restrictive
- distribution_type
- requires
- recommends
- build_requires
- conflicts
- dynamic_config
- private
- provides
- no_index
- keywords
- resources
homepage, license, bugtracker
generated_by
- SEE ALSO
- HISTORY
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
CPAN::Meta::History::Meta_1_3 - Version 1.3 metadata specification for META.yml
- PREFACE
- SYNOPSIS
- DESCRIPTION
- FORMAT
- TERMINOLOGY
distribution, module
- HEADER
- FIELDS
- meta-spec
- name
- version
- abstract
- author
- license
apache, artistic, bsd, gpl, lgpl, mit, mozilla, open_source, perl, restrictive, unrestricted
- distribution_type
- requires
- recommends
- build_requires
- conflicts
- dynamic_config
- private
- provides
- no_index
- keywords
- resources
homepage, license, bugtracker
generated_by
- VERSION SPECIFICATIONS
- SEE ALSO
- HISTORY
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
CPAN::Meta::History::Meta_1_4 - Version 1.4 metadata specification for META.yml
- PREFACE
- SYNOPSIS
- DESCRIPTION
- FORMAT
- TERMINOLOGY
distribution, module
- HEADER
- FIELDS
- meta-spec
- name
- version
- abstract
- author
- license
apache, artistic, bsd, gpl, lgpl, mit, mozilla, open_source, perl, restrictive, unrestricted
- distribution_type
- requires
- recommends
- build_requires
- configure_requires
- conflicts
- dynamic_config
- private
- provides
- no_index
- keywords
- resources
homepage, license, bugtracker
generated_by
- VERSION SPECIFICATIONS
- SEE ALSO
- HISTORY
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
CPAN::Meta::Merge - Merging CPAN Meta fragments
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
new
merge(@fragments)
- MERGE STRATEGIES
identical, set_addition, uniq_map, improvise
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::Prereqs - a set of distribution prerequisites by phase and type
- VERSION
- DESCRIPTION
- METHODS
new
requirements_for
phases
types_in
with_merged_prereqs
merged_requirements
as_string_hash
is_finalized
finalize
clone
BUGS
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::Requirements - a set of version requirements for a CPAN dist
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
- new
- add_minimum
- add_maximum
- add_exclusion
- exact_version
- version_range_for_module
- add_requirements
- accepts_module
- clear_requirement
- requirements_for_module
- structured_requirements_for_module
- required_modules
- clone
- is_simple
- is_finalized
- finalize
- as_string_hash
- add_string_requirement
>= 1.3, <= 1.3, != 1.3, > 1.3, < 1.3, >= 1.3, != 1.5, <= 2.0
from_string_hash
- SUPPORT
Bugs / Feature Requests
Source Code
AUTHORS
CONTRIBUTORS
COPYRIGHT AND LICENSE
CPAN::Meta::Requirements::Range - a set of version requirements for a CPAN dist
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
- with_string_requirement
>= 1.3, <= 1.3, != 1.3, > 1.3, < 1.3, >= 1.3, != 1.5, <= 2.0
with_range
with_exact_version
with_minimum
with_maximum
with_exclusion
as_struct
as_string
accepts
is_simple
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::Spec - specification for CPAN distribution metadata
- VERSION
- SYNOPSIS
- DESCRIPTION
- TERMINOLOGY
distribution, module, package, consumer, producer, must, should, may, etc
- DATA TYPES
Boolean
String
List
Map
License String
URL
Version
Version Range
- STRUCTURE
- REQUIRED FIELDS
version, url, stable, testing, unstable
- OPTIONAL FIELDS
file, directory, package, namespace, description, prereqs, file, version, homepage, license, bugtracker, repository
DEPRECATED FIELDS
- VERSION NUMBERS
- Version Formats
Decimal versions, Dotted-integer versions
Version Ranges
- PREREQUISITES
- Prereq Spec
configure, build, test, runtime, develop, requires, recommends, suggests, conflicts
Merging and Resolving Prerequisites
- SERIALIZATION
- NOTES FOR IMPLEMENTORS
Extracting Version Numbers from Perl Modules
Comparing Version Numbers
Prerequisites for dynamically configured distributions
Indexing distributions a la PAUSE
SEE ALSO
HISTORY
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::Validator - validate CPAN distribution metadata structures
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
new
is_valid
errors
Check Methods
Validator Methods
BUGS
AUTHORS
COPYRIGHT AND LICENSE
CPAN::Meta::YAML - Read and write a subset of YAML for CPAN Meta files
VERSION
SYNOPSIS
DESCRIPTION
SUPPORT
SEE ALSO
AUTHORS
COPYRIGHT AND LICENSE
SYNOPSIS
DESCRIPTION
new( LOCAL_FILE_NAME )
continents()
countries( [CONTINENTS] )
mirrors( [COUNTRIES] )
get_mirrors_by_countries( [COUNTRIES] )
get_mirrors_by_continents( [CONTINENTS] )
get_countries_by_continents( [CONTINENTS] )
default_mirror
best_mirrors
get_n_random_mirrors_by_continents( N, [CONTINENTS] )
get_mirrors_timings( MIRROR_LIST, SEEN, CALLBACK, %ARGS
);
find_best_continents( HASH_REF );
AUTHOR
LICENSE
CPAN::Nox - Wrapper around CPAN.pm without using any XS module
SYNOPSIS
DESCRIPTION
LICENSE
SEE ALSO
CPAN::Plugin - Base class for CPAN shell extensions
- SYNOPSIS
- DESCRIPTION
Alpha Status
How Plugins work?
- METHODS
plugin_requires
distribution_object
distribution
distribution_info
build_dir
is_xs
AUTHOR
CPAN::Plugin::Specfile - Proof of concept implementation of a trivial CPAN::Plugin
- SYNOPSIS
- DESCRIPTION
OPTIONS
AUTHOR
CPAN::Queue - internal queue support for CPAN.pm
LICENSE
CPAN::Tarzip - internal handling of tar archives for CPAN.pm
LICENSE
CPAN::Version - utility functions to compare CPAN versions
SYNOPSIS
DESCRIPTION
LICENSE
Carp - alternative warn and die for modules
- SYNOPSIS
- DESCRIPTION
Forcing a Stack Trace
Stack Trace formatting
- GLOBAL VARIABLES
$Carp::MaxEvalLen
$Carp::MaxArgLen
$Carp::MaxArgNums
$Carp::Verbose
$Carp::RefArgFormatter
@CARP_NOT
%Carp::Internal
%Carp::CarpInternal
$Carp::CarpLevel
BUGS
SEE ALSO
CONTRIBUTING
AUTHOR
COPYRIGHT
LICENSE
Class::Struct - declare struct-like datatypes as Perl classes
- SYNOPSIS
- DESCRIPTION
- The struct() function
- Class Creation at Compile Time
- Element Types and Accessor Methods
Scalar (
'$'
or'*$'
), Array ('@'
or'*@'
), Hash ('%'
or'*%'
), Class ('Class_Name'
or'*Class_Name'
)
Initializing with
new
- EXAMPLES
Example 1, Example 2, Example 3
Author and Modification History
Compress::Raw::Bzip2 - Low-Level Interface to bzip2 compression library
- SYNOPSIS
- DESCRIPTION
- Compression
- ($z, $status) = new Compress::Raw::Bzip2 $appendOutput, $blockSize100k, $workfactor;
$appendOutput
,$blockSize100k
,$workfactor
$status
=$bz
->bzdeflate($input,$output
);$status
=$bz
->bzflush($output);$status
=$bz
->bzclose($output);Example
- Uncompression
- ($z, $status) = new Compress::Raw::Bunzip2 $appendOutput, $consumeInput, $small, $verbosity, $limitOutput;
$appendOutput
,$consumeInput
,$small
,$limitOutput
,$verbosity
$status
=$z
->bzinflate($input,$output
);- Misc
my
$version
= Compress::Raw::Bzip2::bzlibversion();
Constants
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
Compress::Raw::Zlib - Low-Level Interface to zlib or zlib-ng compression library
- SYNOPSIS
- DESCRIPTION
- Compress::Raw::Zlib::Deflate
- ($d, $status) = new Compress::Raw::Zlib::Deflate( [OPT] )
-Level, -Method, -WindowBits, -MemLevel, -Strategy, -Dictionary, -Bufsize, -AppendOutput, -CRC32, -ADLER32
- $status = $d->deflate($input, $output)
- $status = $d->flush($output [, $flush_type])
- $status = $d->deflateReset()
- $status = $d->deflateParams([OPT])
-Level, -Strategy, -BufSize
$status
=$d
->deflateTune($good_length,$max_lazy
,$nice_length
,$max_chain
)$d
->dict_adler()$d
->crc32()$d
->adler32()$d
->msg()$d
->total_in()$d
->total_out()$d
->get_Strategy()$d
->get_Level()$d
->get_BufSize()Example
- Compress::Raw::Zlib::Inflate
- ($i, $status) = new Compress::Raw::Zlib::Inflate( [OPT] )
-WindowBits, -Bufsize, -Dictionary, -AppendOutput, -CRC32, -ADLER32, -ConsumeInput, -LimitOutput
$status
=$i
->inflate($input,$output
[,$eof])$status
=$i
->inflateSync($input)$status
=$i
->inflateReset()$i
->dict_adler()$i
->crc32()$i
->adler32()$i
->msg()$i
->total_in()$i
->total_out()$d
->get_BufSize()Examples
- CHECKSUM FUNCTIONS
- Misc
my
$version
= Compress::Raw::Zlib::zlib_version();my
$version
= Compress::Raw::Zlib::zlibng_version();my
$flags
= Compress::Raw::Zlib::zlibCompileFlags();is_zlib_native(); =head2 is_zlibng_native(); =head2 is_zlibng_compat(); =head2 is_zlibng();
- The LimitOutput option.
- ACCESSING ZIP FILES
- FAQ
Compatibility with Unix compress/uncompress.
Accessing .tar.Z files
Zlib Library Version Support
CONSTANTS
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
Compress::Zlib - Interface to zlib compression library
- SYNOPSIS
- DESCRIPTION
Notes for users of Compress::Zlib version 1
- GZIP INTERFACE
$gz
= gzopen($filename,$mode
),$gz
= gzopen($filehandle,$mode
),$bytesread
=$gz
->gzread($buffer [,$size
]) ;,$bytesread
=$gz
->gzreadline($line) ;,$byteswritten
=$gz
->gzwrite($buffer) ;,$status
=$gz
->gzflush($flush_type) ;,$offset
=$gz
->gztell() ;,$status
=$gz
->gzseek($offset,$whence
) ;,$gz
->gzclose,$gz
->gzsetparams($level,$strategy
,$level
,$strategy
,$gz
->gzerror,$gzerrno
Examples
Compress::Zlib::memGzip
Compress::Zlib::memGunzip
- COMPRESS/UNCOMPRESS
$dest
= compress($source [,$level
] ) ;,$dest
= uncompress($source) ;- Deflate Interface
- ($d, $status) = deflateInit( [OPT] )
-Level, -Method, -WindowBits, -MemLevel, -Strategy, -Dictionary, -Bufsize
- ($out, $status) = $d->deflate($buffer)
- ($out, $status) = $d->flush() =head2 ($out, $status) = $d->flush($flush_type)
- $status = $d->deflateParams([OPT])
-Level, -Strategy
$d
->dict_adler()$d
->msg()$d
->total_in()$d
->total_out()Example
- Inflate Interface
- ($i, $status) = inflateInit()
-WindowBits, -Bufsize, -Dictionary
($out,
$status
) =$i
->inflate($buffer)$status
=$i
->inflateSync($buffer)$i
->dict_adler()$i
->msg()$i
->total_in()$i
->total_out()Example
- CHECKSUM FUNCTIONS
- Misc
my
$version
= Compress::Zlib::zlib_version();
CONSTANTS
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
Config, =for comment Generated by configpm. Any changes made here will be lost!
- SYNOPSIS
- DESCRIPTION
myconfig(), config_sh(), config_re($regex), config_vars(@names), bincompat_options(), non_bincompat_options(), compile_date(), local_patches(), header_files()
- EXAMPLE
- WARNING
- GLOSSARY
- P
PERL_API_REVISION
,PERL_API_SUBVERSION
,PERL_API_VERSION
,PERL_CONFIG_SH
,PERL_PATCHLEVEL
,PERL_REVISION
,PERL_SUBVERSION
,PERL_VERSION
- _
_a
,_exe
,_o
- a
afs
,afsroot
,alignbytes
,aphostname
,api_revision
,api_subversion
,api_version
,api_versionstring
,ar
,archlib
,archlibexp
,archname
,archname64
,archobjs
,asctime_r_proto
,awk
- b
baserev
,bash
,bin
,bin_ELF
,binexp
,bison
,byacc
,byteorder
- c
c
,castflags
,cat
,cc
,cccdlflags
,ccdlflags
,ccflags
,ccflags_uselargefiles
,ccname
,ccsymbols
,ccversion
,cf_by
,cf_email
,cf_time
,charbits
,charsize
,chgrp
,chmod
,chown
,clocktype
,comm
,compiler_warning
,compress
,config_arg0
,config_argc
,config_args
,contains
,cp
,cpio
,cpp
,cpp_stuff
,cppccsymbols
,cppflags
,cpplast
,cppminus
,cpprun
,cppstdin
,cppsymbols
,crypt_r_proto
,cryptlib
,csh
,ctermid_r_proto
,ctime_r_proto
- d
d_Gconvert
,d_PRIEUldbl
,d_PRIFUldbl
,d_PRIGUldbl
,d_PRIXU64
,d_PRId64
,d_PRIeldbl
,d_PRIfldbl
,d_PRIgldbl
,d_PRIi64
,d_PRIo64
,d_PRIu64
,d_PRIx64
,d_SCNfldbl
,d__fwalk
,d_accept4
,d_access
,d_accessx
,d_acosh
,d_aintl
,d_alarm
,d_archlib
,d_asctime64
,d_asctime_r
,d_asinh
,d_atanh
,d_atolf
,d_atoll
,d_attribute_always_inline
,d_attribute_deprecated
,d_attribute_format
,d_attribute_malloc
,d_attribute_nonnull
,d_attribute_noreturn
,d_attribute_pure
,d_attribute_unused
,d_attribute_visibility
,d_attribute_warn_unused_result
,d_backtrace
,d_bsd
,d_bsdgetpgrp
,d_bsdsetpgrp
,d_builtin_add_overflow
,d_builtin_choose_expr
,d_builtin_expect
,d_builtin_mul_overflow
,d_builtin_sub_overflow
,d_c99_variadic_macros
,d_casti32
,d_castneg
,d_cbrt
,d_chown
,d_chroot
,d_chsize
,d_class
,d_clearenv
,d_closedir
,d_cmsghdr_s
,d_copysign
,d_copysignl
,d_cplusplus
,d_crypt
,d_crypt_r
,d_csh
,d_ctermid
,d_ctermid_r
,d_ctime64
,d_ctime_r
,d_cuserid
,d_dbminitproto
,d_difftime
,d_difftime64
,d_dir_dd_fd
,d_dirfd
,d_dirnamlen
,d_dladdr
,d_dlerror
,d_dlopen
,d_dlsymun
,d_dosuid
,d_double_has_inf
,d_double_has_nan
,d_double_has_negative_zero
,d_double_has_subnormals
,d_double_style_cray
,d_double_style_ibm
,d_double_style_ieee
,d_double_style_vax
,d_drand48_r
,d_drand48proto
,d_dup2
,d_dup3
,d_duplocale
,d_eaccess
,d_endgrent
,d_endgrent_r
,d_endhent
,d_endhostent_r
,d_endnent
,d_endnetent_r
,d_endpent
,d_endprotoent_r
,d_endpwent
,d_endpwent_r
,d_endsent
,d_endservent_r
,d_eofnblk
,d_erf
,d_erfc
,d_eunice
,d_exp2
,d_expm1
,d_faststdio
,d_fchdir
,d_fchmod
,d_fchmodat
,d_fchown
,d_fcntl
,d_fcntl_can_lock
,d_fd_macros
,d_fd_set
,d_fdclose
,d_fdim
,d_fds_bits
,d_fegetround
,d_ffs
,d_ffsl
,d_fgetpos
,d_finite
,d_finitel
,d_flexfnam
,d_flock
,d_flockproto
,d_fma
,d_fmax
,d_fmin
,d_fork
,d_fp_class
,d_fp_classify
,d_fp_classl
,d_fpathconf
,d_fpclass
,d_fpclassify
,d_fpclassl
,d_fpgetround
,d_fpos64_t
,d_freelocale
,d_frexpl
,d_fs_data_s
,d_fseeko
,d_fsetpos
,d_fstatfs
,d_fstatvfs
,d_fsync
,d_ftello
,d_ftime
,d_futimes
,d_gai_strerror
,d_gdbm_ndbm_h_uses_prototypes
,d_gdbmndbm_h_uses_prototypes
,d_getaddrinfo
,d_getcwd
,d_getenv_preserves_other_thread
,d_getespwnam
,d_getfsstat
,d_getgrent
,d_getgrent_r
,d_getgrgid_r
,d_getgrnam_r
,d_getgrps
,d_gethbyaddr
,d_gethbyname
,d_gethent
,d_gethname
,d_gethostbyaddr_r
,d_gethostbyname_r
,d_gethostent_r
,d_gethostprotos
,d_getitimer
,d_getlogin
,d_getlogin_r
,d_getmnt
,d_getmntent
,d_getnameinfo
,d_getnbyaddr
,d_getnbyname
,d_getnent
,d_getnetbyaddr_r
,d_getnetbyname_r
,d_getnetent_r
,d_getnetprotos
,d_getpagsz
,d_getpbyname
,d_getpbynumber
,d_getpent
,d_getpgid
,d_getpgrp
,d_getpgrp2
,d_getppid
,d_getprior
,d_getprotobyname_r
,d_getprotobynumber_r
,d_getprotoent_r
,d_getprotoprotos
,d_getprpwnam
,d_getpwent
,d_getpwent_r
,d_getpwnam_r
,d_getpwuid_r
,d_getsbyname
,d_getsbyport
,d_getsent
,d_getservbyname_r
,d_getservbyport_r
,d_getservent_r
,d_getservprotos
,d_getspnam
,d_getspnam_r
,d_gettimeod
,d_gmtime64
,d_gmtime_r
,d_gnulibc
,d_grpasswd
,d_has_C_UTF8
,d_hasmntopt
,d_htonl
,d_hypot
,d_ilogb
,d_ilogbl
,d_inc_version_list
,d_inetaton
,d_inetntop
,d_inetpton
,d_int64_t
,d_ip_mreq
,d_ip_mreq_source
,d_ipv6_mreq
,d_ipv6_mreq_source
,d_isascii
,d_isblank
,d_isfinite
,d_isfinitel
,d_isinf
,d_isinfl
,d_isless
,d_isnan
,d_isnanl
,d_isnormal
,d_j0
,d_j0l
,d_killpg
,d_lc_monetary_2008
,d_lchown
,d_ldbl_dig
,d_ldexpl
,d_lgamma
,d_lgamma_r
,d_libm_lib_version
,d_libname_unique
,d_link
,d_linkat
,d_llrint
,d_llrintl
,d_llround
,d_llroundl
,d_localeconv_l
,d_localtime64
,d_localtime_r
,d_localtime_r_needs_tzset
,d_locconv
,d_lockf
,d_log1p
,d_log2
,d_logb
,d_long_double_style_ieee
,d_long_double_style_ieee_doubledouble
,d_long_double_style_ieee_extended
,d_long_double_style_ieee_std
,d_long_double_style_vax
,d_longdbl
,d_longlong
,d_lrint
,d_lrintl
,d_lround
,d_lroundl
,d_lseekproto
,d_lstat
,d_madvise
,d_malloc_good_size
,d_malloc_size
,d_malloc_usable_size
,d_mblen
,d_mbrlen
,d_mbrtowc
,d_mbstowcs
,d_mbtowc
,d_memmem
,d_memrchr
,d_mkdir
,d_mkdtemp
,d_mkfifo
,d_mkostemp
,d_mkstemp
,d_mkstemps
,d_mktime
,d_mktime64
,d_mmap
,d_modfl
,d_modflproto
,d_mprotect
,d_msg
,d_msg_ctrunc
,d_msg_dontroute
,d_msg_oob
,d_msg_peek
,d_msg_proxy
,d_msgctl
,d_msgget
,d_msghdr_s
,d_msgrcv
,d_msgsnd
,d_msync
,d_munmap
,d_mymalloc
,d_nan
,d_nanosleep
,d_ndbm
,d_ndbm_h_uses_prototypes
,d_nearbyint
,d_newlocale
,d_nextafter
,d_nexttoward
,d_nice
,d_nl_langinfo
,d_nl_langinfo_l
,d_non_int_bitfields
,d_nv_preserves_uv
,d_nv_zero_is_allbits_zero
,d_off64_t
,d_old_pthread_create_joinable
,d_oldpthreads
,d_oldsock
,d_open3
,d_openat
,d_pathconf
,d_pause
,d_perl_lc_all_category_positions_init
,d_perl_lc_all_separator
,d_perl_lc_all_uses_name_value_pairs
,d_perl_otherlibdirs
,d_phostname
,d_pipe
,d_pipe2
,d_poll
,d_portable
,d_prctl
,d_prctl_set_name
,d_printf_format_null
,d_procselfexe
,d_pseudofork
,d_pthread_atfork
,d_pthread_attr_setscope
,d_pthread_yield
,d_ptrdiff_t
,d_pwage
,d_pwchange
,d_pwclass
,d_pwcomment
,d_pwexpire
,d_pwgecos
,d_pwpasswd
,d_pwquota
,d_qgcvt
,d_quad
,d_querylocale
,d_random_r
,d_re_comp
,d_readdir
,d_readdir64_r
,d_readdir_r
,d_readlink
,d_readv
,d_recvmsg
,d_regcmp
,d_regcomp
,d_remainder
,d_remquo
,d_rename
,d_renameat
,d_rewinddir
,d_rint
,d_rmdir
,d_round
,d_sbrkproto
,d_scalbn
,d_scalbnl
,d_sched_yield
,d_scm_rights
,d_seekdir
,d_select
,d_sem
,d_semctl
,d_semctl_semid_ds
,d_semctl_semun
,d_semget
,d_semop
,d_sendmsg
,d_setegid
,d_setenv
,d_seteuid
,d_setgrent
,d_setgrent_r
,d_setgrps
,d_sethent
,d_sethostent_r
,d_setitimer
,d_setlinebuf
,d_setlocale
,d_setlocale_accepts_any_locale_name
,d_setlocale_r
,d_setnent
,d_setnetent_r
,d_setpent
,d_setpgid
,d_setpgrp
,d_setpgrp2
,d_setprior
,d_setproctitle
,d_setprotoent_r
,d_setpwent
,d_setpwent_r
,d_setregid
,d_setresgid
,d_setresuid
,d_setreuid
,d_setrgid
,d_setruid
,d_setsent
,d_setservent_r
,d_setsid
,d_setvbuf
,d_shm
,d_shmat
,d_shmatprototype
,d_shmctl
,d_shmdt
,d_shmget
,d_sigaction
,d_siginfo_si_addr
,d_siginfo_si_band
,d_siginfo_si_errno
,d_siginfo_si_fd
,d_siginfo_si_pid
,d_siginfo_si_status
,d_siginfo_si_uid
,d_siginfo_si_value
,d_signbit
,d_sigprocmask
,d_sigsetjmp
,d_sin6_scope_id
,d_sitearch
,d_snprintf
,d_sockaddr_in6
,d_sockaddr_sa_len
,d_sockaddr_storage
,d_sockatmark
,d_sockatmarkproto
,d_socket
,d_socklen_t
,d_sockpair
,d_socks5_init
,d_sqrtl
,d_srand48_r
,d_srandom_r
,d_sresgproto
,d_sresuproto
,d_stat
,d_statblks
,d_statfs_f_flags
,d_statfs_s
,d_static_inline
,d_statvfs
,d_stdio_cnt_lval
,d_stdio_ptr_lval
,d_stdio_ptr_lval_nochange_cnt
,d_stdio_ptr_lval_sets_cnt
,d_stdio_stream_array
,d_stdiobase
,d_stdstdio
,d_strcoll
,d_strerror_l
,d_strerror_r
,d_strftime
,d_strlcat
,d_strlcpy
,d_strnlen
,d_strtod
,d_strtod_l
,d_strtol
,d_strtold
,d_strtold_l
,d_strtoll
,d_strtoq
,d_strtoul
,d_strtoull
,d_strtouq
,d_strxfrm
,d_strxfrm_l
,d_suidsafe
,d_symlink
,d_syscall
,d_syscallproto
,d_sysconf
,d_sysernlst
,d_syserrlst
,d_system
,d_tcgetpgrp
,d_tcsetpgrp
,d_telldir
,d_telldirproto
,d_tgamma
,d_thread_local
,d_time
,d_timegm
,d_times
,d_tm_tm_gmtoff
,d_tm_tm_zone
,d_tmpnam_r
,d_towlower
,d_towupper
,d_trunc
,d_truncate
,d_truncl
,d_ttyname_r
,d_tzname
,d_u32align
,d_ualarm
,d_umask
,d_uname
,d_union_semun
,d_unlinkat
,d_unordered
,d_unsetenv
,d_uselocale
,d_usleep
,d_usleepproto
,d_ustat
,d_vendorarch
,d_vendorbin
,d_vendorlib
,d_vendorscript
,d_vfork
,d_void_closedir
,d_voidsig
,d_voidtty
,d_vsnprintf
,d_wait4
,d_waitpid
,d_wcrtomb
,d_wcscmp
,d_wcstombs
,d_wcsxfrm
,d_wctomb
,d_writev
,d_xenix
,date
,db_hashtype
,db_prefixtype
,db_version_major
,db_version_minor
,db_version_patch
,default_inc_excludes_dot
,direntrytype
,dlext
,dlsrc
,doubleinfbytes
,doublekind
,doublemantbits
,doublenanbytes
,doublesize
,drand01
,drand48_r_proto
,dtrace
,dtraceobject
,dtracexnolibs
,dynamic_ext
- e
eagain
,ebcdic
,echo
,egrep
,emacs
,endgrent_r_proto
,endhostent_r_proto
,endnetent_r_proto
,endprotoent_r_proto
,endpwent_r_proto
,endservent_r_proto
,eunicefix
,exe_ext
,expr
,extensions
,extern_C
,extras
- f
fflushNULL
,fflushall
,find
,firstmakefile
,flex
,fpossize
,fpostype
,freetype
,from
,full_ar
,full_csh
,full_sed
- g
gccansipedantic
,gccosandvers
,gccversion
,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
,gidformat
,gidsign
,gidsize
,gidtype
,glibpth
,gmake
,gmtime_r_proto
,gnulibc_version
,grep
,groupcat
,groupstype
,gzip
- h
h_fcntl
,h_sysfile
,hint
,hostcat
,hostgenerate
,hostosname
,hostperl
,html1dir
,html1direxp
,html3dir
,html3direxp
- i
i16size
,i16type
,i32dformat
,i32size
,i32type
,i64size
,i64type
,i8size
,i8type
,i_arpainet
,i_bfd
,i_bsdioctl
,i_crypt
,i_db
,i_dbm
,i_dirent
,i_dlfcn
,i_execinfo
,i_fcntl
,i_fenv
,i_fp
,i_fp_class
,i_gdbm
,i_gdbm_ndbm
,i_gdbmndbm
,i_grp
,i_ieeefp
,i_inttypes
,i_langinfo
,i_libutil
,i_locale
,i_machcthr
,i_malloc
,i_mallocmalloc
,i_mntent
,i_ndbm
,i_netdb
,i_neterrno
,i_netinettcp
,i_niin
,i_poll
,i_prot
,i_pthread
,i_pwd
,i_quadmath
,i_rpcsvcdbm
,i_sgtty
,i_shadow
,i_socks
,i_stdbool
,i_stdint
,i_stdlib
,i_sunmath
,i_sysaccess
,i_sysdir
,i_sysfile
,i_sysfilio
,i_sysin
,i_sysioctl
,i_syslog
,i_sysmman
,i_sysmode
,i_sysmount
,i_sysndir
,i_sysparam
,i_syspoll
,i_sysresrc
,i_syssecrt
,i_sysselct
,i_syssockio
,i_sysstat
,i_sysstatfs
,i_sysstatvfs
,i_syssyscall
,i_systime
,i_systimek
,i_systimes
,i_systypes
,i_sysuio
,i_sysun
,i_sysutsname
,i_sysvfs
,i_syswait
,i_termio
,i_termios
,i_time
,i_unistd
,i_ustat
,i_utime
,i_vfork
,i_wchar
,i_wctype
,i_xlocale
,ignore_versioned_solibs
,inc_version_list
,inc_version_list_init
,incpath
,incpth
,inews
,initialinstalllocation
,installarchlib
,installbin
,installhtml1dir
,installhtml3dir
,installman1dir
,installman3dir
,installprefix
,installprefixexp
,installprivlib
,installscript
,installsitearch
,installsitebin
,installsitehtml1dir
,installsitehtml3dir
,installsitelib
,installsiteman1dir
,installsiteman3dir
,installsitescript
,installstyle
,installusrbinperl
,installvendorarch
,installvendorbin
,installvendorhtml1dir
,installvendorhtml3dir
,installvendorlib
,installvendorman1dir
,installvendorman3dir
,installvendorscript
,intsize
,issymlink
,ivdformat
,ivsize
,ivtype
- k
known_extensions
,ksh
- l
ld
,ld_can_script
,lddlflags
,ldflags
,ldflags_uselargefiles
,ldlibpthname
,less
,lib_ext
,libc
,libperl
,libpth
,libs
,libsdirs
,libsfiles
,libsfound
,libspath
,libswanted
,libswanted_uselargefiles
,line
,lint
,lkflags
,ln
,lns
,localtime_r_proto
,locincpth
,loclibpth
,longdblinfbytes
,longdblkind
,longdblmantbits
,longdblnanbytes
,longdblsize
,longlongsize
,longsize
,lp
,lpr
,ls
,lseeksize
,lseektype
- m
mail
,mailx
,make
,make_set_make
,mallocobj
,mallocsrc
,malloctype
,man1dir
,man1direxp
,man1ext
,man3dir
,man3direxp
,man3ext
,mips_type
,mistrustnm
,mkdir
,mmaptype
,modetype
,more
,multiarch
,mv
,myarchname
,mydomain
,myhostname
,myuname
- n
n
,need_va_copy
,netdb_hlen_type
,netdb_host_type
,netdb_name_type
,netdb_net_type
,nm
,nm_opt
,nm_so_opt
,nonxs_ext
,nroff
,nvEUformat
,nvFUformat
,nvGUformat
,nv_overflows_integers_at
,nv_preserves_uv_bits
,nveformat
,nvfformat
,nvgformat
,nvmantbits
,nvsize
,nvtype
- o
o_nonblock
,obj_ext
,old_pthread_create_joinable
,optimize
,orderlib
,osname
,osvers
,otherlibdirs
- p
package
,pager
,passcat
,patchlevel
,path_sep
,perl
,perl5
,perl_lc_all_category_positions_init
,perl_lc_all_separator
,perl_patchlevel
,perl_static_inline
,perl_thread_local
,perladmin
,perllibs
,perlpath
,pg
,phostname
,pidtype
,plibpth
,pmake
,pr
,prefix
,prefixexp
,privlib
,privlibexp
,procselfexe
,ptrsize
- q
quadkind
,quadtype
- r
randbits
,randfunc
,random_r_proto
,randseedtype
,ranlib
,rd_nodata
,readdir64_r_proto
,readdir_r_proto
,revision
,rm
,rm_try
,rmail
,run
,runnm
- s
sGMTIME_max
,sGMTIME_min
,sLOCALTIME_max
,sLOCALTIME_min
,sPRIEUldbl
,sPRIFUldbl
,sPRIGUldbl
,sPRIXU64
,sPRId64
,sPRIeldbl
,sPRIfldbl
,sPRIgldbl
,sPRIi64
,sPRIo64
,sPRIu64
,sPRIx64
,sSCNfldbl
,sched_yield
,scriptdir
,scriptdirexp
,sed
,seedfunc
,selectminbits
,selecttype
,sendmail
,setgrent_r_proto
,sethostent_r_proto
,setlocale_r_proto
,setnetent_r_proto
,setprotoent_r_proto
,setpwent_r_proto
,setservent_r_proto
,sh
,shar
,sharpbang
,shmattype
,shortsize
,shrpenv
,shsharp
,sig_count
,sig_name
,sig_name_init
,sig_num
,sig_num_init
,sig_size
,signal_t
,sitearch
,sitearchexp
,sitebin
,sitebinexp
,sitehtml1dir
,sitehtml1direxp
,sitehtml3dir
,sitehtml3direxp
,sitelib
,sitelib_stem
,sitelibexp
,siteman1dir
,siteman1direxp
,siteman3dir
,siteman3direxp
,siteprefix
,siteprefixexp
,sitescript
,sitescriptexp
,sizesize
,sizetype
,sleep
,smail
,so
,sockethdr
,socketlib
,socksizetype
,sort
,spackage
,spitshell
,srand48_r_proto
,srandom_r_proto
,src
,ssizetype
,st_dev_sign
,st_dev_size
,st_ino_sign
,st_ino_size
,startperl
,startsh
,static_ext
,stdchar
,stdio_base
,stdio_bufsiz
,stdio_cnt
,stdio_filbuf
,stdio_ptr
,stdio_stream_array
,strerror_r_proto
,submit
,subversion
,sysman
,sysroot
- t
tail
,taint_disabled
,taint_support
,tar
,targetarch
,targetdir
,targetenv
,targethost
,targetmkdir
,targetport
,targetsh
,tbl
,tee
,test
,timeincl
,timetype
,tmpnam_r_proto
,to
,touch
,tr
,trnl
,troff
,ttyname_r_proto
- u
u16size
,u16type
,u32XUformat
,u32oformat
,u32size
,u32type
,u32uformat
,u32xformat
,u64size
,u64type
,u8size
,u8type
,uidformat
,uidsign
,uidsize
,uidtype
,uname
,uniq
,uquadtype
,use64bitall
,use64bitint
,usecbacktrace
,usecrosscompile
,usedefaultstrict
,usedevel
,usedl
,usedtrace
,usefaststdio
,useithreads
,usekernprocpathname
,uselanginfo
,uselargefiles
,uselongdouble
,usemallocwrap
,usemorebits
,usemultiplicity
,usemymalloc
,usenm
,usensgetexecutablepath
,useopcode
,useperlio
,useposix
,usequadmath
,usereentrant
,userelocatableinc
,useshrplib
,usesitecustomize
,usesocks
,usethreads
,usevendorprefix
,useversionedarchname
,usevfork
,usrinc
,uuname
,uvXUformat
,uvoformat
,uvsize
,uvtype
,uvuformat
,uvxformat
- v
vendorarch
,vendorarchexp
,vendorbin
,vendorbinexp
,vendorhtml1dir
,vendorhtml1direxp
,vendorhtml3dir
,vendorhtml3direxp
,vendorlib
,vendorlib_stem
,vendorlibexp
,vendorman1dir
,vendorman1direxp
,vendorman3dir
,vendorman3direxp
,vendorprefix
,vendorprefixexp
,vendorscript
,vendorscriptexp
,version
,version_patchlevel_string
,versiononly
,vi
- x
xlibpth
,xlocale_needed
- y
yacc
,yaccflags
- z
zcat
,zip
GIT DATA
NOTE
Config::Extensions - hash lookup of which core extensions were built.
- SYNOPSIS
- DESCRIPTION
dynamic, nonxs, static
AUTHOR
Config::Perl::V - Structured data retrieval of perl -V output
- SYNOPSIS
- DESCRIPTION
- $conf = myconfig ()
- $conf = plv2hash ($text [, ...])
- $info = summary ([$conf])
- $md5 = signature ([$conf])
- The hash structure
build, osname, stamp, options, derived, patches, environment, config, inc
REASONING
BUGS
TODO
AUTHOR
COPYRIGHT AND LICENSE
Cwd - get pathname of current working directory
- SYNOPSIS
- DESCRIPTION
- getcwd and friends
getcwd, cwd, fastcwd, fastgetcwd, getdcwd
- abs_path and friends
abs_path, realpath, fast_abs_path
$ENV
{PWD}
NOTES
AUTHOR
COPYRIGHT
SEE ALSO
DB - programmatic interface to the Perl debugging API
- SYNOPSIS
- DESCRIPTION
- Global Variables
$DB::sub, %DB::sub, $DB::single, $DB::signal, $DB::trace, @DB::args, @DB::dbline, %DB::dbline, $DB::package, $DB::filename, $DB::subname, $DB::lineno
- API Methods
CLIENT->register(), CLIENT->evalcode(STRING), CLIENT->skippkg('D::hide'), CLIENT->run(), CLIENT->step(), CLIENT->next(), CLIENT->done()
- Client Callback Methods
CLIENT->init(), CLIENT->prestop([STRING]), CLIENT->stop(), CLIENT->idle(), CLIENT->poststop([STRING]), CLIENT->evalcode(STRING), CLIENT->cleanup(), CLIENT->output(LIST)
BUGS
AUTHOR
DBM_Filter -- Filter DBM keys/values
- SYNOPSIS
- DESCRIPTION
- What is a DBM Filter?
So what's new?
- METHODS
- $db->Filter_Push() / $db->Filter_Key_Push() / $db->Filter_Value_Push()
Filter_Push, Filter_Key_Push, Filter_Value_Push
$db
->Filter_Pop()$db
->Filtered()- Writing a Filter
- Immediate Filters
- Canned Filters
"name", params
- Filters Included
utf8, encode, compress, int32, null
- NOTES
Maintain Round Trip Integrity
Don't mix filtered & non-filtered data in the same database file.
EXAMPLE
SEE ALSO
AUTHOR
DBM_Filter::compress - filter for DBM_Filter
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
DBM_Filter::encode - filter for DBM_Filter
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
DBM_Filter::int32 - filter for DBM_Filter
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
DBM_Filter::null - filter for DBM_Filter
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
DBM_Filter::utf8 - filter for DBM_Filter
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
DB_File - Perl5 access to Berkeley DB version 1.x
- SYNOPSIS
- DESCRIPTION
DB_HASH, DB_BTREE, DB_RECNO
Using DB_File with Berkeley DB version 2 or greater
Interface to Berkeley DB
Opening a Berkeley DB Database File
Default Parameters
In Memory Databases
- DB_HASH
A Simple Example
- DB_BTREE
Changing the BTREE sort order
Handling Duplicate Keys
The get_dup() Method
The find_dup() Method
The del_dup() Method
Matching Partial Keys
- DB_RECNO
- The 'bval' Option
- A Simple Example
- Extra RECNO Methods
$X
->push(list) ;,$value
=$X
->pop ;,$X
->shift,$X
->unshift(list) ;,$X
->length,$X
->splice(offset, length, elements);
Another Example
- THE API INTERFACE
$status
=$X
->get($key,$value
[,$flags
]) ;,$status
=$X
->put($key,$value
[,$flags
]) ;,$status
=$X
->del($key [,$flags
]) ;,$status
=$X
->fd ;,$status
=$X
->seq($key,$value
,$flags
) ;,$status
=$X
->sync([$flags]) ;- DBM FILTERS
- DBM Filter Low-level API
filter_store_key, filter_store_value, filter_fetch_key, filter_fetch_value
The Filter
An Example -- the NULL termination problem.
Another Example -- Key is a C int.
- HINTS AND TIPS
- Locking: The Trouble with fd
- Safe ways to lock a database
Tie::DB_Lock, Tie::DB_LockFile, DB_File::Lock
Sharing Databases With C Applications
The untie() Gotcha
- COMMON QUESTIONS
Why is there Perl source in my database?
How do I store complex data structures with DB_File?
What does "wide character in subroutine entry" mean?
What does "Invalid Argument" mean?
What does "Bareword 'DB_File' not allowed" mean?
REFERENCES
HISTORY
BUGS
SUPPORT
AVAILABILITY
COPYRIGHT
SEE ALSO
AUTHOR
Data::Dumper - stringified perl data structures, suitable for both printing and eval
- SYNOPSIS
- DESCRIPTION
- Methods
PACKAGE->new(ARRAYREF [, ARRAYREF]),
$OBJ
->Dump or PACKAGE->Dump(ARRAYREF [, ARRAYREF]),$OBJ
->Seen([HASHREF]),$OBJ
->Values([ARRAYREF]),$OBJ
->Names([ARRAYREF]),$OBJ
->Reset- Functions
Dumper(LIST)
- Configuration Variables or Methods
- Exports
Dumper
- EXAMPLES
- BUGS
NOTE
AUTHOR
VERSION
SEE ALSO
Devel::PPPort - Perl/Pollution/Portability
- SYNOPSIS
- Start using Devel::PPPort for XS projects
- DESCRIPTION
Why use ppport.h?
How to use ppport.h
Running ppport.h
- FUNCTIONS
WriteFile
GetFileContents
- COMPATIBILITY
- Provided Perl compatibility API
- Supported Perl API, sorted by version
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
BUGS
AUTHORS
COPYRIGHT
SEE ALSO
Devel::Peek - A data debugging tool for the XS programmer
- SYNOPSIS
- DESCRIPTION
Runtime debugging
Memory footprint debugging
- EXAMPLES
A simple scalar string
A simple scalar number
A simple scalar with an extra reference
A reference to a simple scalar
A reference to an array
A reference to a hash
Dumping a large array or hash
A reference to an SV which holds a C pointer
A reference to a subroutine
EXPORTS
BUGS
AUTHOR
SEE ALSO
Devel::SelfStubber - generate stubs for a SelfLoading module
SYNOPSIS
DESCRIPTION
Digest - Modules that calculate message digests
- SYNOPSIS
- DESCRIPTION
binary, hex, base64
- OO INTERFACE
$ctx
= Digest->XXX($arg,...),$ctx
= Digest->new(XXX =>$arg
,...),$ctx
= Digest::XXX->new($arg,...),$other_ctx
=$ctx
->clone,$ctx
->reset,$ctx
->add($data
),$ctx
->add($chunk1
,$chunk2
, ... ),$ctx
->addfile($io_handle
),$ctx
->add_bits($data
,$nbits
),$ctx
->add_bits($bitstring
),$ctx
->digest,$ctx
->hexdigest,$ctx
->b64digest,$ctx
->base64_padded_digest
Digest speed
SEE ALSO
AUTHOR
Digest::MD5 - Perl interface to the MD5 Algorithm
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
md5($data,...), md5_hex($data,...), md5_base64($data,...)
- METHODS
$md5
= Digest::MD5->new,$md5
->reset,$md5
->clone,$md5
->add($data,...),$md5
->addfile($io_handle),$md5
->add_bits($data,$nbits
),$md5
->add_bits($bitstring),$md5
->digest,$md5
->hexdigest,$md5
->b64digest,@ctx
=$md5
->context,$md5
->context(@ctx)
EXAMPLES
SEE ALSO
COPYRIGHT
AUTHORS
Digest::SHA - Perl extension for SHA-1/224/256/384/512
- SYNOPSIS
- SYNOPSIS (HMAC-SHA)
- ABSTRACT
- DESCRIPTION
- UNICODE AND SIDE EFFECTS
- NIST STATEMENT ON SHA-1
- PADDING OF BASE64 DIGESTS
- EXPORT
- EXPORTABLE FUNCTIONS
sha1($data, ...), sha224($data, ...), sha256($data, ...), sha384($data, ...), sha512($data, ...), sha512224($data, ...), sha512256($data, ...), sha1_hex($data, ...), sha224_hex($data, ...), sha256_hex($data, ...), sha384_hex($data, ...), sha512_hex($data, ...), sha512224_hex($data, ...), sha512256_hex($data, ...), sha1_base64($data, ...), sha224_base64($data, ...), sha256_base64($data, ...), sha384_base64($data, ...), sha512_base64($data, ...), sha512224_base64($data, ...), sha512256_base64($data, ...), new($alg), reset($alg), hashsize, algorithm, clone, add($data, ...), add_bits($data,
$nbits
), add_bits($bits), addfile(*FILE), addfile($filename [,$mode
]), getstate, putstate($str), dump($filename), load($filename), digest, hexdigest, b64digest, hmac_sha1($data,$key
), hmac_sha224($data,$key
), hmac_sha256($data,$key
), hmac_sha384($data,$key
), hmac_sha512($data,$key
), hmac_sha512224($data,$key
), hmac_sha512256($data,$key
), hmac_sha1_hex($data,$key
), hmac_sha224_hex($data,$key
), hmac_sha256_hex($data,$key
), hmac_sha384_hex($data,$key
), hmac_sha512_hex($data,$key
), hmac_sha512224_hex($data,$key
), hmac_sha512256_hex($data,$key
), hmac_sha1_base64($data,$key
), hmac_sha224_base64($data,$key
), hmac_sha256_base64($data,$key
), hmac_sha384_base64($data,$key
), hmac_sha512_base64($data,$key
), hmac_sha512224_base64($data,$key
), hmac_sha512256_base64($data,$key
)
SEE ALSO
AUTHOR
ACKNOWLEDGMENTS
COPYRIGHT AND LICENSE
Digest::base - Digest base class
SYNOPSIS
DESCRIPTION
SEE ALSO
Digest::file - Calculate digests of files
- SYNOPSIS
- DESCRIPTION
digest_file(
$file
,$algorithm
, [$arg,...] ), digest_file_hex($file
,$algorithm
, [$arg,...] ), digest_file_base64($file
,$algorithm
, [$arg,...] )
SEE ALSO
DirHandle - (obsolete) supply object methods for directory handles
SYNOPSIS
DESCRIPTION
Dumpvalue - provides screen dump of Perl data.
- SYNOPSIS
- DESCRIPTION
- Creation
arrayDepth
,hashDepth
,compactDump
,veryCompact
,globPrint
,dumpDBFiles
,dumpPackages
,dumpReused
,tick
,quoteHighBit
,printUndef
,usageOnly
, unctrl, subdump, bareStringify, quoteHighBit, stopDbSignal- Methods
dumpValue, dumpValues, stringify, dumpvars, set_quote, set_unctrl, compactDump, veryCompact, set, get
DynaLoader - Dynamically load C libraries into Perl code
- SYNOPSIS
- DESCRIPTION
@dl_library_path
,@dl_resolve_using
,@dl_require_symbols
,@dl_librefs
,@dl_modules
,@dl_shared_objects
, dl_error(),$dl_debug
,$dl_dlext
, dl_findfile(), dl_expandspec(), dl_load_file(), dl_unload_file(), dl_load_flags(), dl_find_symbol(), dl_find_symbol_anywhere(), dl_undef_symbols(), dl_install_xsub(), bootstrap()
AUTHOR
Encode - character encodings in Perl
- SYNOPSIS
- Table of Contents
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
- DESCRIPTION
TERMINOLOGY
- THE PERL ENCODING API
Basic methods
Listing available encodings
Defining Aliases
Finding IANA Character Set Registry names
- Encoding via PerlIO
- Handling Malformed Data
- List of CHECK values
perlqq mode (CHECK = Encode::FB_PERLQQ), HTML charref mode (CHECK = Encode::FB_HTMLCREF), XML charref mode (CHECK = Encode::FB_XMLCREF)
coderef for CHECK
- Defining Encodings
- The UTF8 flag
Goal #1:, Goal #2:, Goal #3:, Goal #4:
Messing with Perl's Internals
UTF-8 vs. utf8 vs. UTF8
SEE ALSO
MAINTAINER
COPYRIGHT
Encode::Alias - alias definitions to encodings
- SYNOPSIS
- DESCRIPTION
As a simple string, As a qr// compiled regular expression, e.g.:, As a code reference, e.g.:
Alias overloading
SEE ALSO
Encode::Byte - Single Byte Encodings
SYNOPSIS
ABSTRACT
DESCRIPTION
SEE ALSO
Encode::CJKConstants -- Internally used by Encode::??::ISO_2022_*
Encode::CN - China-based Chinese Encodings
SYNOPSIS
DESCRIPTION
NOTES
BUGS
SEE ALSO
Encode::CN::HZ -- internally used by Encode::CN
Encode::Config -- internally used by Encode
Encode::EBCDIC - EBCDIC Encodings
SYNOPSIS
ABSTRACT
DESCRIPTION
SEE ALSO
Encode::Encoder -- Object Oriented Encoder
- SYNOPSIS
- ABSTRACT
- Description
- Predefined Methods
$e
= Encode::Encoder->new([$data,$encoding
]);, encoder(),$e
->data([$data]),$e
->encoding([$encoding]),$e
->bytes([$encoding])
Example: base64 transcoder
Operator Overloading
SEE ALSO
Encode::Encoding - Encode Implementation Base Class
- SYNOPSIS
- DESCRIPTION
- Methods you should implement
->encode($string [,$check]), ->decode($octets [,$check]), ->cat_decode($destination,
$octets
,$offset
,$terminator
[,$check])- Other methods defined in Encode::Encodings
->name, ->mime_name, ->renew, ->renewed, ->perlio_ok(), ->needs_lines()
Example: Encode::ROT13
- Why the heck Encode API is different?
Compiled Encodings
- SEE ALSO
Scheme 1, Scheme 2, Other Schemes
Encode::GSM0338 -- ETSI GSM 03.38 Encoding
- SYNOPSIS
- DESCRIPTION
Septets
BUGS
SEE ALSO
Encode::Guess -- Guesses encoding from data
- SYNOPSIS
- ABSTRACT
- DESCRIPTION
Encode::Guess->set_suspects, Encode::Guess->add_suspects, Encode::decode("Guess" ...), Encode::Guess->guess($data), guess_encoding($data, [, list of suspects])
CAVEATS
TO DO
SEE ALSO
Encode::JP - Japanese Encodings
SYNOPSIS
ABSTRACT
DESCRIPTION
Note on ISO-2022-JP(-1)?
BUGS
SEE ALSO
Encode::JP::H2Z -- internally used by Encode::JP::2022_JP*
Encode::JP::JIS7 -- internally used by Encode::JP
Encode::KR - Korean Encodings
SYNOPSIS
DESCRIPTION
BUGS
SEE ALSO
Encode::KR::2022_KR -- internally used by Encode::KR
Encode::MIME::Header -- MIME encoding for an unstructured email header
SYNOPSIS
ABSTRACT
DESCRIPTION
BUGS
AUTHORS
SEE ALSO
Encode::MIME::Name, Encode::MIME::NAME -- internally used by Encode
SEE ALSO
Encode::PerlIO -- a detailed document on Encode and PerlIO
- Overview
- How does it work?
- Line Buffering
How can I tell whether my encoding fully supports PerlIO ?
SEE ALSO
Encode::Supported -- Encodings supported by Encode
- DESCRIPTION
Encoding Names
- Supported Encodings
- Built-in Encodings
- Encode::Unicode -- other Unicode encodings
- Encode::Byte -- Extended ASCII
ISO-8859 and corresponding vendor mappings, KOI8 - De Facto Standard for the Cyrillic world
- gsm0338 - Hentai Latin 1
gsm0338 support before 2.19
- 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
- Miscellaneous encodings
Encode::EBCDIC, Encode::Symbol, Encode::MIME::Header, Encode::Guess
- Unsupported encodings
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
- Encoding vs. Charset -- terminology
- Encoding Classification (by Anton Tagunov and Dan Kogai)
- Microsoft-related naming mess
KS_C_5601-1987, GB2312, Big5, Shift_JIS
- 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
- See Also
- References
ECMA, ECMA-035 (eq
ISO-2022
), IANA, Assigned Charset Names by IANA, ISO, RFC, UC, Unicode Glossary- Other Notable Sites
czyborra.com, CJK.inf, Jungshik Shin's Hangul FAQ, debian.org: "Introduction to i18n"
- Offline sources
CJKV Information Processing
by Ken Lunde
Encode::Symbol - Symbol Encodings
SYNOPSIS
ABSTRACT
DESCRIPTION
SEE ALSO
Encode::TW - Taiwan-based Chinese Encodings
SYNOPSIS
DESCRIPTION
NOTES
BUGS
SEE ALSO
Encode::Unicode -- Various Unicode Transformation Formats
- SYNOPSIS
- ABSTRACT
<http://www.unicode.org/glossary/> says:, Quick Reference
- Size, Endianness, and BOM
- by size
- by endianness
BOM as integer when fetched in network byte order
Surrogate Pairs
Error Checking
SEE ALSO
Encode::Unicode::UTF7 -- UTF-7 encoding
SYNOPSIS
ABSTRACT
In Practice
SEE ALSO
English - use nice English (or awk) names for ugly punctuation variables
SYNOPSIS
DESCRIPTION
PERFORMANCE
Env - perl module that imports environment variables as scalars or arrays
SYNOPSIS
DESCRIPTION
LIMITATIONS
AUTHOR
Errno - System errno constants
SYNOPSIS
DESCRIPTION
CAVEATS
AUTHOR
COPYRIGHT
Exporter - Implements default import method for modules
- SYNOPSIS
- DESCRIPTION
- How to Export
- Selecting What to Export
- How to Import
use YourModule;
,use YourModule ();
,use YourModule qw(...);
- Advanced Features
Specialised Import Lists
Exporting Without Using Exporter's import Method
Exporting Without Inheriting from Exporter
Module Version Checking
Managing Unknown Symbols
Tag Handling Utility Functions
Generating Combined Tags
AUTOLOAD
ed Constants- Good Practices
Declaring
@EXPORT_OK
and FriendsPlaying Safe
What Not to Export
SEE ALSO
LICENSE
Exporter::Heavy - Exporter guts
SYNOPSIS
DESCRIPTION
ExtUtils::CBuilder - Compile and link C code for Perl modules
- SYNOPSIS
- DESCRIPTION
- METHODS
new, have_compiler, have_cplusplus, compile,
object_file
,include_dirs
,extra_compiler_flags
,C++
, 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
TO DO
HISTORY
SUPPORT
AUTHOR
COPYRIGHT
SEE ALSO
ExtUtils::CBuilder::Platform::Windows - Builder class for Windows platforms
DESCRIPTION
AUTHOR
SEE ALSO
ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc.
- SYNOPSIS
- DESCRIPTION
FUNCTIONS
cat
eqtime
rm_rf
rm_f
touch
mv
cp
chmod
mkpath
test_f
test_d
dos2unix
SEE ALSO
AUTHOR
ExtUtils::Command::MM - Commands for the MM's to use in Makefiles
- SYNOPSIS
- DESCRIPTION
test_harness
pod2man
warn_if_old_packlist
perllocal_install
uninstall
test_s
cp_nonempty
ExtUtils::Constant - generate XS code to import C header constants
- SYNOPSIS
- DESCRIPTION
- USAGE
IV, UV, NV, PV, PVN, SV, YES, NO, UNDEF
FUNCTIONS
constant_types
XS_constant PACKAGE, TYPES, XS_SUBNAME, C_SUBNAME
autoload PACKAGE, VERSION, AUTOLOADER
WriteMakefileSnippet
WriteConstants ATTRIBUTE => VALUE [, ...], NAME, DEFAULT_TYPE, BREAKOUT_AT, NAMES, PROXYSUBS, C_FH, C_FILE, XS_FH, XS_FILE, XS_SUBNAME, C_SUBNAME
AUTHOR
ExtUtils::Constant::Base - base class for ExtUtils::Constant objects
SYNOPSIS
DESCRIPTION
USAGE
header
memEQ_clause args_hashref
dump_names arg_hashref, ITEM..
assign arg_hashref, VALUE..
return_clause arg_hashref, ITEM
switch_clause arg_hashref, NAMELEN, ITEMHASH, ITEM..
params WHAT
dogfood arg_hashref, ITEM..
normalise_items args, default_type, seen_types, seen_items, ITEM..
C_constant arg_hashref, ITEM.., name, type, value, macro, default, pre, post, def_pre, def_post, utf8, weight
BUGS
AUTHOR
ExtUtils::Constant::Utils - helper functions for ExtUtils::Constant
- SYNOPSIS
- DESCRIPTION
- USAGE
C_stringify NAME
perl_stringify NAME
AUTHOR
ExtUtils::Constant::XS - generate C code for XS modules' constants.
SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
- SYNOPSIS
- DESCRIPTION
- @EXPORT
- FUNCTIONS
xsinit(), Examples, ldopts(), Examples, perl_inc(), ccflags(), ccdlflags(), ccopts(), xsi_header(), xsi_protos(@modules), xsi_body(@modules)
EXAMPLES
SEE ALSO
AUTHOR
ExtUtils::Install - install files from here to there
- SYNOPSIS
- VERSION
- DESCRIPTION
_chmod($$;$)
_warnonce(@)
_choke(@)
- _move_file_at_boot( $file, $target, $moan )
- _unlink_or_rename( $file, $tryhard, $installing )
- Functions
_get_install_skip
- _have_write_access
- _can_write_dir($dir)
- _mkpath($dir,$show,$mode,$verbose,$dry_run)
- _copy($from,$to,$verbose,$dry_run)
- _chdir($from)
- install
- _do_cleanup
- install_rooted_file( $file )
- install_rooted_dir( $dir )
- forceunlink( $file, $tryhard )
- directory_not_empty( $dir )
- install_default
- uninstall
- inc_uninstall($filepath,$libdir,$verbose,$dry_run,$ignore,$results)
- run_filter($cmd,$src,$dest)
- pm_to_blib
- _autosplit
- _invokant
- ENVIRONMENT
PERL_INSTALL_ROOT, EU_INSTALL_IGNORE_SKIP, EU_INSTALL_SITE_SKIPFILE, EU_INSTALL_ALWAYS_COPY
AUTHOR
LICENSE
ExtUtils::Installed - Inventory management of installed modules
- SYNOPSIS
- DESCRIPTION
- USAGE
- METHODS
new(), modules(), files(), directories(), directory_tree(), validate(), packlist(), version()
EXAMPLE
AUTHOR
ExtUtils::Liblist - determine libraries to use and how to use them
- SYNOPSIS
- DESCRIPTION
For static extensions, For dynamic extensions at build/link time, For dynamic extensions at load time
EXTRALIBS
LDLOADLIBS and LD_RUN_PATH
BSLOADLIBS
- PORTABILITY
VMS implementation
Win32 implementation
SEE ALSO
ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass
SYNOPSIS
DESCRIPTION
ExtUtils::MM::Utils - ExtUtils::MM methods without dependency on ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
- METHODS
maybe_command
BUGS
SEE ALSO
ExtUtils::MM_AIX - AIX specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
Overridden methods
AUTHOR
SEE ALSO
ExtUtils::MM_Any - Platform-agnostic MM methods
- SYNOPSIS
- DESCRIPTION
- METHODS
Cross-platform helper methods
Targets
Init methods
Tools
File::Spec wrappers
Misc
AUTHOR
ExtUtils::MM_BeOS - methods to override UN*X behaviour in ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
os_flavor
init_linker
ExtUtils::MM_Cygwin - methods to override UN*X behaviour in ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
os_flavor
cflags
replace_manpage_separator
init_linker
maybe_command
dynamic_lib
install
ExtUtils::MM_DOS - DOS specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
- Overridden methods
os_flavor
replace_manpage_separator
xs_static_lib_is_xs
AUTHOR
SEE ALSO
ExtUtils::MM_Darwin - special behaviors for OS X
- SYNOPSIS
- DESCRIPTION
Overridden Methods
ExtUtils::MM_MacOS - once produced Makefiles for MacOS Classic
SYNOPSIS
DESCRIPTION
ExtUtils::MM_NW5 - methods to override UN*X behaviour in ExtUtils::MakeMaker
SYNOPSIS
DESCRIPTION
os_flavor
init_platform, platform_constants
static_lib_pure_cmd
xs_static_lib_is_xs
dynamic_lib
ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
- METHODS
init_dist
init_linker
os_flavor
xs_static_lib_is_xs
ExtUtils::MM_OS390 - OS390 specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
- Overriden methods
xs_make_dynamic_lib
AUTHOR
SEE ALSO
ExtUtils::MM_QNX - QNX specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
Overridden methods
AUTHOR
SEE ALSO
ExtUtils::MM_UWIN - U/WIN specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
- Overridden methods
os_flavor
replace_manpage_separator
AUTHOR
SEE ALSO
ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
- METHODS
- Methods
os_flavor
c_o (o)
xs_obj_opt
dbgoutflag
cflags (o)
const_cccmd (o)
const_config (o)
const_loadlibs (o)
constants (o)
depend (o)
init_DEST
init_dist
dist (o)
dist_basics (o)
dist_ci (o)
dist_core (o)
dist_target
tardist_target
zipdist_target
tarfile_target
zipfile_target
uutardist_target
shdist_target
dlsyms (o)
dynamic_bs (o)
dynamic_lib (o)
xs_dynamic_lib_macros
xs_make_dynamic_lib
exescan
extliblist
find_perl
fixin
force (o)
guess_name
has_link_code
init_dirscan
init_MANPODS
init_MAN1PODS
init_MAN3PODS
init_PM
init_DIRFILESEP
init_main
init_tools
init_linker
init_lib2arch
init_PERL
init_platform, platform_constants
init_PERM
init_xs
install (o)
installbin (o)
linkext (o)
lsdir
macro (o)
makeaperl (o)
xs_static_lib_is_xs (o)
makefile (o)
maybe_command
needs_linking (o)
parse_abstract
parse_version
pasthru (o)
perl_script
perldepend (o)
pm_to_blib
ppd
prefixify
processPL (o)
specify_shell
quote_paren
replace_manpage_separator
cd
oneliner
quote_literal
escape_newlines
max_exec_len
static (o)
xs_make_static_lib
static_lib_closures
static_lib_fixtures
static_lib_pure_cmd
staticmake (o)
subdir_x (o)
subdirs (o)
test (o)
test_via_harness (override)
test_via_script (override)
tool_xsubpp (o)
all_target
top_targets (o)
writedoc
xs_c (o)
xs_cpp (o)
xs_o (o)
SEE ALSO
ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
- Methods always loaded
wraplist
- Methods
guess_name (override)
find_perl (override)
_fixin_replace_shebang (override)
maybe_command (override)
pasthru (override)
pm_to_blib (override)
perl_script (override)
replace_manpage_separator
init_DEST
init_DIRFILESEP
init_main (override)
init_tools (override)
init_platform (override)
platform_constants
init_VERSION (override)
constants (override)
special_targets
cflags (override)
const_cccmd (override)
tools_other (override)
init_dist (override)
c_o (override)
xs_c (override)
xs_o (override)
_xsbuild_replace_macro (override)
_xsbuild_value (override)
dlsyms (override)
xs_obj_opt
dynamic_lib (override)
xs_make_static_lib (override)
static_lib_pure_cmd (override)
xs_static_lib_is_xs
extra_clean_files
zipfile_target, tarfile_target, shdist_target
install (override)
perldepend (override)
makeaperl (override)
maketext_filter (override)
prefixify (override)
cd
oneliner
echo
quote_literal
escape_dollarsigns
escape_all_dollarsigns
escape_newlines
max_exec_len
init_linker
catdir (override), catfile (override)
eliminate_macros
fixpath
os_flavor
is_make_type (override)
make_type (override)
AUTHOR
ExtUtils::MM_VOS - VOS specific subclass of ExtUtils::MM_Unix
- SYNOPSIS
- DESCRIPTION
Overridden methods
AUTHOR
SEE ALSO
ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker
- SYNOPSIS
- DESCRIPTION
- Overridden methods
dlsyms
xs_dlsyms_ext
replace_manpage_separator
maybe_command
init_DIRFILESEP
init_tools
init_others
init_platform, platform_constants
specify_shell
constants
special_targets
static_lib_pure_cmd
dynamic_lib
extra_clean_files
init_linker
perl_script
quote_dep
xs_obj_opt
pasthru
arch_check (override)
oneliner
cd
max_exec_len
os_flavor
dbgoutflag
cflags
make_type
ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X
- SYNOPSIS
- DESCRIPTION
- Overridden methods
max_exec_len
os_flavor
AUTHOR
ExtUtils::MY - ExtUtils::MakeMaker subclass for customization
SYNOPSIS
DESCRIPTION
ExtUtils::MakeMaker - Create a module Makefile
- SYNOPSIS
- DESCRIPTION
- How To Write A Makefile.PL
- Default Makefile Behaviour
- make test
- make testdb
- make install
- INSTALL_BASE
- PREFIX and LIB attribute
- AFS users
- Static Linking of a new Perl Binary
- Determination of Perl Library and Installation Locations
- Which architecture dependent directory?
- Using Attributes and Parameters
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
- Additional lowercase attributes
clean, depend, dist, dynamic_lib, linkext, macro, postamble, realclean, test, tool_autosplit
- Overriding MakeMaker Methods
- The End Of Cargo Cult Programming
MAN3PODS => ' '
- Hintsfile support
- Distribution Support
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
- Module Meta-Data (META and MYMETA)
- Disabling an extension
- Other Handy Functions
prompt, os_unsupported
Supported versions of Perl
- ENVIRONMENT
PERL_MM_OPT, PERL_MM_USE_DEFAULT, PERL_CORE
SEE ALSO
AUTHORS
LICENSE
ExtUtils::MakeMaker::Config - Wrapper around Config.pm
SYNOPSIS
DESCRIPTION
ExtUtils::MakeMaker::FAQ - Frequently Asked Questions About MakeMaker
- DESCRIPTION
- Module Installation
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
$VERSION
- Common errors and problems
"No rule to make target `/usr/lib/perl5/CORE/config.h', needed by `Makefile'"
- 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
- Module Writing
How do I keep my
$VERSION
up to date without resetting it manually?, What's this META.yml thing and how did it get in my MANIFEST?!, How do I delete everything not in my MANIFEST?, Which tar should I use on Windows?, Which zip should I use on Windows for '[ndg]make zipdist'?- 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
- DESIGN
MakeMaker object hierarchy (simplified)
MakeMaker object hierarchy (real)
The MM_* hierarchy
- PATCHING
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
AUTHOR
SEE ALSO
ExtUtils::MakeMaker::Locale - bundled Encode::Locale
- SYNOPSIS
- DESCRIPTION
decode_argv( ), decode_argv( Encode::FB_CROAK ), env(
$uni_key
), env($uni_key
=>$uni_value
), reinit( ), reinit($encoding
),$ENCODING_LOCALE
,$ENCODING_LOCALE_FS
,$ENCODING_CONSOLE_IN
,$ENCODING_CONSOLE_OUT
- NOTES
Windows
Mac OS X
POSIX (Linux and other Unixes)
SEE ALSO
AUTHOR
ExtUtils::MakeMaker::Tutorial - Writing a module with MakeMaker
- SYNOPSIS
- DESCRIPTION
- The Mantra
- The Layout
Makefile.PL, MANIFEST, lib/, t/, Changes, README, INSTALL, MANIFEST.SKIP, bin/
SEE ALSO
ExtUtils::Manifest - Utilities to write and check a MANIFEST file
- VERSION
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
mkmanifest
- manifind
- manicheck
- filecheck
- fullcheck
- skipcheck
- maniread
- maniskip
- manicopy
- maniadd
- MANIFEST
- MANIFEST.SKIP
#!include_default, #!include /Path/to/another/manifest.skip
- EXPORT_OK
- GLOBAL VARIABLES
- DIAGNOSTICS
Not in MANIFEST:
file,Skipping
file,No such file:
file,MANIFEST:
$!,Added to MANIFEST:
file- ENVIRONMENT
PERL_MM_MANIFEST_DEBUG
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
ExtUtils::Miniperl - write the C code for miniperlmain.c and perlmain.c
SYNOPSIS
DESCRIPTION
SEE ALSO
ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
SYNOPSIS
DESCRIPTION
ExtUtils::Mksymlists - write linker options files for dynamic extension
- SYNOPSIS
- DESCRIPTION
DLBASE, DL_FUNCS, DL_VARS, FILE, FUNCLIST, IMPORTS, NAME
AUTHOR
REVISION
ExtUtils::PL2Bat - Batch file creation to run perl scripts on Windows
- VERSION
- OVERVIEW
- FUNCTIONS
- pl2bat(%opts)
in
,out
,ntargs
,otherargs
,stripsuffix
,usewarnings
,update
ACKNOWLEDGEMENTS
AUTHOR
COPYRIGHT AND LICENSE
mkfh()
__find_relocations
ExtUtils::Packlist - manage .packlist files
- SYNOPSIS
- DESCRIPTION
- USAGE
- FUNCTIONS
new(), read(), write(), validate(), packlist_file()
EXAMPLE
AUTHOR
ExtUtils::ParseXS - converts Perl XS code into C code
- SYNOPSIS
- DESCRIPTION
- EXPORT
- METHODS
$pxs
->new(),$pxs
->process_file(), C++, hiertype, except, typemap, prototypes, versioncheck, linenumbers, optimize, inout, argtypes, s, die_on_error,$pxs
->report_error_count()
AUTHOR
COPYRIGHT
SEE ALSO
ExtUtils::ParseXS::Constants - Initialization values for some globals
SYNOPSIS
DESCRIPTION
ExtUtils::ParseXS::Eval - Clean package to evaluate code in
- SYNOPSIS
- SUBROUTINES
$pxs
->eval_output_typemap_code($typemapcode,$other_hashref
)
$pxs
->eval_input_typemap_code($typemapcode, $other_hashref
)
TODO
ExtUtils::ParseXS::Utilities - Subroutines used with ExtUtils::ParseXS
- SYNOPSIS
- SUBROUTINES
- standard_typemap_locations()
Purpose, Arguments, Return Value
- trim_whitespace()
Purpose, Argument, Return Value
- C_string()
Purpose, Arguments, Return Value
- valid_proto_string()
Purpose, Arguments, Return Value
- process_typemaps()
Purpose, Arguments, Return Value
- map_type()
Purpose, Arguments, Return Value
- standard_XS_defs()
Purpose, Arguments, Return Value
- assign_func_args()
Purpose, Arguments, Return Value
- analyze_preprocessor_statements()
Purpose, Arguments, Return Value
- set_cond()
Purpose, Arguments, Return Value
- current_line_number()
Purpose, Arguments, Return Value
- Warn()
Purpose, Arguments, Return Value
- WarnHint()
Purpose, Arguments, Return Value
- _MsgHint()
Purpose, Arguments, Return Value
- blurt()
Purpose, Arguments, Return Value
- death()
Purpose, Arguments, Return Value
- check_conditional_preprocessor_statements()
Purpose, Arguments, Return Value
- escape_file_for_line_directive()
Purpose, Arguments, Return Value
- report_typemap_failure
Purpose, Arguments, Return Value
ExtUtils::Typemaps - Read/Write/Modify Perl/XS typemap files
SYNOPSIS
DESCRIPTION
METHODS
new
file
add_typemap
add_inputmap
add_outputmap
add_string
remove_typemap
remove_inputmap
remove_outputmap
get_typemap
get_inputmap
get_outputmap
write
as_string
as_embedded_typemap
merge
is_empty
list_mapped_ctypes
_get_typemap_hash
_get_inputmap_hash
_get_outputmap_hash
_get_prototype_hash
clone
tidy_type
CAVEATS
SEE ALSO
AUTHOR
COPYRIGHT & LICENSE
ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps
- SYNOPSIS
- DESCRIPTION
- EXPORTED FUNCTIONS
embeddable_typemap
SEE ALSO
AUTHOR
COPYRIGHT & LICENSE
ExtUtils::Typemaps::InputMap - Entry in the INPUT section of a typemap
SYNOPSIS
DESCRIPTION
METHODS
new
code
xstype
cleaned_code
SEE ALSO
AUTHOR
COPYRIGHT & LICENSE
ExtUtils::Typemaps::OutputMap - Entry in the OUTPUT section of a typemap
SYNOPSIS
DESCRIPTION
METHODS
new
code
xstype
cleaned_code
targetable
SEE ALSO
AUTHOR
COPYRIGHT & LICENSE
ExtUtils::Typemaps::Type - Entry in the TYPEMAP section of a typemap
SYNOPSIS
DESCRIPTION
METHODS
new
proto
xstype
ctype
tidy_ctype
SEE ALSO
AUTHOR
COPYRIGHT & LICENSE
ExtUtils::testlib - add blib/* directories to @INC
SYNOPSIS
DESCRIPTION
Fatal - Replace functions with equivalents which succeed or die
- SYNOPSIS
- BEST PRACTICE
- DESCRIPTION
- DIAGNOSTICS
Bad subroutine name for Fatal:
%s
,%s
is not a Perl subroutine,%s
is neither a builtin, nor a Perl subroutine, Cannot make the non-overridable%s
fatal, Internal error:%s
BUGS
AUTHOR
LICENSE
SEE ALSO
Fcntl - various flag constants and helper functions from C's fcntl.h
- SYNOPSIS
- DESCRIPTION
- EXPORTED SYMBOLS
- Default exports and export tags
:DEFAULT
,:flock
,:mode
,:seek
,:Fcompat
- Symbols for use with fcntl
F_ALLOCSP
,F_ALLOCSP64
,F_DUP2FD
,F_DUPFD
,F_FREESP
,F_FREESP64
,F_FSYNC
,F_FSYNC64
,F_GETFD
,FD_CLOEXEC
,F_GETFL
,F_GETLEASE
,F_RDLCK
,F_WRLCK
,F_UNLCK
,F_GETLK
,F_GETLK64
,F_GETOWN
,F_GETPIPE_SZ
,F_GETSIG
,F_NOTIFY
,DN_ACCESS
,DN_ATTRIB
,DN_CREATE
,DN_DELETE
,DN_MODIFY
,DN_MULTISHOT
,DN_RENAME
,F_SETFD
,F_SETFL
,F_SETLEASE
,F_RDLCK
,F_WRLCK
,F_UNLCK
,F_SETLK
,F_SETLK64
,F_SETLKW
,F_SETLKW64
,F_SETOWN
,F_SETPIPE_SZ
,F_SETSIG
,F_SHARE
,F_UNSHARE
,F_COMPAT
,F_EXLCK
,F_NODNY
,F_POSIX
,F_RDACC
,F_RDDNY
,F_RWACC
,F_RWDNY
,F_SHLCK
,F_WRACC
,F_WRDNY
- Symbols for use with flock
LOCK_EX
,LOCK_MAND
,LOCK_NB
,LOCK_READ
,LOCK_RW
,LOCK_SH
,LOCK_UN
,LOCK_WRITE
- Symbols for use with sysopen
O_ACCMODE
,O_ALIAS
,O_ALT_IO
,O_APPEND
,O_ASYNC
,O_BINARY
,O_CREAT
,O_DEFER
,O_DIRECT
,O_DIRECTORY
,O_DSYNC
,O_EVTONLY
,O_EXCL
,O_EXLOCK
,O_IGNORE_CTTY
,O_LARGEFILE
,O_NDELAY
,O_NOATIME
,O_NOCTTY
,O_NOFOLLOW
,O_NOINHERIT
,O_NOLINK
,O_NONBLOCK
,O_NOSIGPIPE
,O_NOTRANS
,O_RANDOM
,O_RAW
,O_RDONLY
,O_RDWR
,O_RSRC
,O_RSYNC
,O_SEQUENTIAL
,O_SHLOCK
,O_SYMLINK
,O_SYNC
,O_TEMPORARY
,O_TEXT
,O_TMPFILE
,O_TRUNC
,O_TTY_INIT
,O_WRONLY
,FAPPEND
,FASYNC
,FCREAT
,FDEFER
,FDSYNC
,FEXCL
,FLARGEFILE
,FNDELAY
,FNONBLOCK
,FRSYNC
,FSYNC
,FTRUNC
- Symbols for use with seek and sysseek
SEEK_CUR
,SEEK_END
,SEEK_SET
- Symbols for use with stat and chmod
S_ENFMT
,S_IEXEC
,S_IFBLK
,S_IFCHR
,S_IFDIR
,S_IFIFO
,S_IFLNK
,S_IFMT
,_S_IFMT
,S_IFREG
,S_IFSOCK
,S_IFWHT
,S_IMODE
,S_IREAD
,S_IRGRP
,S_IROTH
,S_IRUSR
,S_IRWXG
,S_IRWXO
,S_IRWXU
,S_ISBLK
,S_ISCHR
,S_ISDIR
,S_ISENFMT
,S_ISFIFO
,S_ISGID
,S_ISLNK
,S_ISREG
,S_ISSOCK
,S_ISTXT
,S_ISUID
,S_ISVTX
,S_ISWHT
,S_IWGRP
,S_IWOTH
,S_IWRITE
,S_IWUSR
,S_IXGRP
,S_IXOTH
,S_IXUSR
SEE ALSO
APPENDIX A
File::Basename - Parse file paths into directory, filename and suffix.
SYNOPSIS
DESCRIPTION
fileparse
basename
dirname
fileparse_set_fstype
SEE ALSO
File::Compare - Compare files or filehandles
SYNOPSIS
DESCRIPTION
RETURN
AUTHOR
File::Copy - Copy files or filehandles
- SYNOPSIS
- DESCRIPTION
copy , move , syscopy , rmscopy($from,$to[,$date_flag])
RETURN
NOTES
AUTHOR
File::DosGlob - DOS like globbing and then some
SYNOPSIS
DESCRIPTION
EXPORTS (by request only)
BUGS
AUTHOR
HISTORY
SEE ALSO
File::Fetch - A generic file fetching mechanism
- SYNOPSIS
- DESCRIPTION
- ACCESSORS
$ff
->uri,$ff
->scheme,$ff
->host,$ff
->vol,$ff
->share,$ff
->path,$ff
->file,$ff
->file_default
$ff
->output_file
- METHODS
$ff
= File::Fetch->new( uri => 'http://some.where.com/dir/file.txt' );- $where = $ff->fetch( [to => /my/output/dir/ | \$scalar] )
- $ff->error([BOOL])
- HOW IT WORKS
- GLOBAL VARIABLES
$File::Fetch::FROM_EMAIL
$File::Fetch::USER_AGENT
$File::Fetch::FTP_PASSIVE
$File::Fetch::TIMEOUT
$File::Fetch::WARN
$File::Fetch::DEBUG
$File::Fetch::BLACKLIST
$File::Fetch::METHOD_FAIL
- MAPPING
- FREQUENTLY ASKED QUESTIONS
So how do I use a proxy with File::Fetch?
I used 'lynx' to fetch a file, but its contents is all wrong!
Files I'm trying to fetch have reserved characters or non-ASCII characters in them. What do I do?
- TODO
Implement
$PREFER_BIN
BUG REPORTS
AUTHOR
COPYRIGHT
File::Find - Traverse a directory tree.
- SYNOPSIS
- DESCRIPTION
find, finddepth
- %options
wanted
,bydepth
,preprocess
,postprocess
,follow
,follow_fast
,follow_skip
,dangling_symlinks
,no_chdir
,untaint
,untaint_pattern
,untaint_skip
- The wanted function
$File::Find::dir
is the current directory name,,$_
is the current filename within that directory,$File::Find::name
is the complete pathname to the file
- WARNINGS
- BUGS AND CAVEATS
$dont_use_nlink
, Symlinks
HISTORY
SEE ALSO
File::Glob - Perl extension for BSD glob routine
- SYNOPSIS
- DESCRIPTION
- META CHARACTERS
- EXPORTS
- POSIX FLAGS
GLOB_ERR
,GLOB_LIMIT
,GLOB_MARK
,GLOB_NOCASE
,GLOB_NOCHECK
,GLOB_NOSORT
,GLOB_BRACE
,GLOB_NOMAGIC
,GLOB_QUOTE
,GLOB_TILDE
,GLOB_CSH
,GLOB_ALPHASORT
- DIAGNOSTICS
GLOB_NOSPACE
,GLOB_ABEND
NOTES
SEE ALSO
AUTHOR
File::GlobMapper - Extend File Glob to Allow Input and Output Files
- SYNOPSIS
- DESCRIPTION
- Behind The Scenes
- Limitations
- Input File Glob
~, ~user, ., *, ?, \, [], {,}, ()
- Output File Glob
"*", #1
Returned Data
- EXAMPLES
A Rename script
A few example globmaps
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
File::Path - Create or remove directory trees
- VERSION
- SYNOPSIS
- DESCRIPTION
make_path(
$dir1
,$dir2
, .... ), make_path($dir1
,$dir2
, ...., \%opts ), mode =>$num
, chmod =>$num
, verbose =>$bool
, error => \$err, owner =>$owner
, user =>$owner
, uid =>$owner
, group =>$group
, mkpath($dir
), mkpath($dir
,$verbose
,$mode
), mkpath( [$dir1,$dir2
,...],$verbose
,$mode
), mkpath($dir1
,$dir2
,..., \%opt ), remove_tree($dir1
,$dir2
, .... ), remove_tree($dir1
,$dir2
, ...., \%opts ), verbose =>$bool
, safe =>$bool
, keep_root =>$bool
, result => \$res, error => \$err, rmtree($dir
), rmtree($dir
,$verbose
,$safe
), rmtree( [$dir1,$dir2
,...],$verbose
,$safe
), rmtree($dir1
,$dir2
,..., \%opt )- ERROR HANDLING
NOTE:
- NOTES
<http://cve.circl.lu/cve/CVE-2004-0452>, <http://cve.circl.lu/cve/CVE-2005-0448>
- 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
- SEE ALSO
- BUGS AND LIMITATIONS
MULTITHREADED APPLICATIONS
NFS Mount Points
REPORTING BUGS
- ACKNOWLEDGEMENTS
- AUTHORS
- CONTRIBUTORS
<bulkdd@cpan.org>, Charlie Gonzalez <itcharlie@cpan.org>, Craig A. Berry <craigberry@mac.com>, James E Keenan <jkeenan@cpan.org>, John Lightsey <john@perlsec.org>, Nigel Horne <njh@bandsman.co.uk>, Richard Elberger <riche@cpan.org>, Ryan Yee <ryee@cpan.org>, Skye Shaw <shaw@cpan.org>, Tom Lutz <tommylutz@gmail.com>, Will Sheppard <willsheppard@github>
COPYRIGHT
LICENSE
File::Spec - portably perform operations on file names
- SYNOPSIS
- DESCRIPTION
- METHODS
canonpath , catdir , catfile , curdir , devnull , rootdir , tmpdir , updir , no_upwards, case_tolerant, file_name_is_absolute, path , join , splitpath , splitdir
, catpath(), abs2rel , rel2abs()
SEE ALSO
AUTHOR
COPYRIGHT
File::Spec::AmigaOS - File::Spec for AmigaOS
- SYNOPSIS
- DESCRIPTION
- METHODS
tmpdir
file_name_is_absolute
File::Spec::Cygwin - methods for Cygwin file specs
SYNOPSIS
DESCRIPTION
canonpath
file_name_is_absolute
tmpdir (override)
case_tolerant
COPYRIGHT
File::Spec::Epoc - methods for Epoc file specs
SYNOPSIS
DESCRIPTION
canonpath()
AUTHOR
COPYRIGHT
SEE ALSO
File::Spec::Functions - portably perform operations on file names
- SYNOPSIS
- DESCRIPTION
Exports
COPYRIGHT
SEE ALSO
File::Spec::Mac - File::Spec for Mac OS (Classic)
- SYNOPSIS
- DESCRIPTION
- METHODS
canonpath
catdir()
catfile
curdir
devnull
rootdir
tmpdir
updir
file_name_is_absolute
path
splitpath
splitdir
catpath
abs2rel
rel2abs
AUTHORS
COPYRIGHT
SEE ALSO
File::Spec::OS2 - methods for OS/2 file specs
- SYNOPSIS
- DESCRIPTION
tmpdir, splitpath
COPYRIGHT
File::Spec::Unix - File::Spec for Unix, base for other File::Spec modules
- SYNOPSIS
- DESCRIPTION
- METHODS
canonpath()
catdir()
catfile
curdir
devnull
rootdir
tmpdir
updir
no_upwards
case_tolerant
file_name_is_absolute
path
join
splitpath
splitdir
catpath()
abs2rel
rel2abs()
COPYRIGHT
SEE ALSO
File::Spec::VMS - methods for VMS file specs
SYNOPSIS
DESCRIPTION
canonpath (override)
catdir (override)
catfile (override)
curdir (override)
devnull (override)
rootdir (override)
tmpdir (override)
updir (override)
case_tolerant (override)
path (override)
file_name_is_absolute (override)
splitpath (override)
splitdir (override)
catpath (override)
abs2rel (override)
rel2abs (override)
COPYRIGHT
SEE ALSO
File::Spec::Win32 - methods for Win32 file specs
- SYNOPSIS
- DESCRIPTION
devnull
tmpdir
case_tolerant
file_name_is_absolute
catfile
canonpath
splitpath
splitdir
catpath
Note For File::Spec::Win32 Maintainers
COPYRIGHT
SEE ALSO
File::Temp - return name and handle of a temporary file safely
- VERSION
- SYNOPSIS
- DESCRIPTION
- PORTABILITY
- OBJECT-ORIENTED INTERFACE
new, newdir, filename, dirname, unlink_on_destroy, DESTROY
- FUNCTIONS
tempfile, tempdir
- MKTEMP FUNCTIONS
mkstemp, mkstemps, mkdtemp, mktemp
- POSIX FUNCTIONS
tmpnam, tmpfile
- ADDITIONAL FUNCTIONS
tempnam
- UTILITY FUNCTIONS
unlink0, cmpstat, unlink1, cleanup
- PACKAGE VARIABLES
safe_level, STANDARD, MEDIUM, HIGH, TopSystemUID,
$KEEP_ALL
,$DEBUG
- WARNING
Temporary files and NFS
Forking
Directory removal
Taint mode
BINMODE
HISTORY
SEE ALSO
SUPPORT
AUTHOR
CONTRIBUTORS
COPYRIGHT AND LICENSE
File::stat - by-name interface to Perl's built-in stat() functions
- SYNOPSIS
- DESCRIPTION
- BUGS
- ERRORS
-%s is not implemented on a File::stat object
- WARNINGS
File::stat ignores use filetest 'access', File::stat ignores VMS ACLs
NOTE
AUTHOR
FileCache - keep more files open than the system permits
- SYNOPSIS
- DESCRIPTION
cacheout EXPR, cacheout MODE, EXPR
CAVEATS
BUGS
FileHandle - supply object methods for filehandles
- SYNOPSIS
- DESCRIPTION
$fh
->print,$fh
->printf,$fh
->getline,$fh
->getlines
SEE ALSO
Filter::Simple - Simplified source filtering
- SYNOPSIS
- DESCRIPTION
- The Problem
- A Solution
- Disabling or changing <no> behaviour
- All-in-one interface
- Filtering only specific components of source code
"code"
,"code_no_comments"
,"executable"
,"executable_no_comments"
,"quotelike"
,"string"
,"regex"
,"all"
Filtering only the code parts of source code
Using Filter::Simple with an explicit
import
subroutineUsing Filter::Simple and Exporter together
How it works
AUTHOR
CONTACT
COPYRIGHT AND LICENSE
Filter::Util::Call - Perl Source Filter Utility Module
- SYNOPSIS
- DESCRIPTION
- use Filter::Util::Call
- import()
- filter_add()
- filter() and anonymous sub
$_
,$status
, filter_read and filter_read_exact, filter_del, real_import, unimport()
- LIMITATIONS
__DATA__ is ignored, Max. codesize limited to 32-bit
- EXAMPLES
Example 1: A simple filter.
Example 2: Using the context
Example 3: Using the context within the filter
Example 4: Using filter_del
Filter::Simple
AUTHOR
DATE
LICENSE
FindBin - Locate directory of original Perl script
- SYNOPSIS
- DESCRIPTION
- EXPORTABLE VARIABLES
$Bin
or$Dir
,$Script
,$RealBin
or$RealDir
,$RealScript
KNOWN ISSUES
AUTHORS
COPYRIGHT
GDBM_File - Perl5 access to the gdbm library.
- SYNOPSIS
- DESCRIPTION
- Tie
GDBM_READER, GDBM_WRITER, GDBM_WRCREAT, GDBM_NEWDB
- STATIC METHODS
- GDBM_version
1 - exact guess, 2 - approximate, 3 - rough guess
- ERROR HANDLING
$GDBM_File::gdbm_errno
gdbm_check_syserr
- DATABASE METHODS
- close
- errno
- syserrno
- strerror
- clear_error
- needs_recovery
- reorganize
- sync
- count
- flags
- dbname
- cache_size
- block_size
- sync_mode
- centfree
- coalesce
- mmap
- mmapsize
- recover
err => sub { ... }, backup => \$str, max_failed_keys =>
$n
, max_failed_buckets =>$n
, max_failures =>$n
, stat => \%hash, recovered_keys, recovered_buckets, failed_keys, failed_buckets- convert
- dump
binary => 1, mode => MODE, overwrite => 1
- load
replace => 1, restore_mode => 0 | 1, restore_owner => 0 | 1, strict_errors => 1
- CRASH TOLERANCE
- crash_tolerance_status
- failure_atomic
- latest_snapshot
GDBM_SNAPSHOT_BAD, GDBM_SNAPSHOT_ERR, GDBM_SNAPSHOT_SAME, GDBM_SNAPSHOT_SUSPICIOUS
AVAILABILITY
SECURITY AND PORTABILITY
SEE ALSO
Getopt::Long - Extended processing of command line options
- SYNOPSIS
- DESCRIPTION
- Command Line Options, an Introduction
- Getting Started with Getopt::Long
- Simple options
- A little bit less simple options
- Mixing command line option with other arguments
- Options with values
- Options with multiple values
- Options with hash values
- User-defined subroutines to handle options
- Options with multiple names
- Case and abbreviations
- Summary of Option Specifications
!, +, s, i, o, f, : type [ desttype ], : number [ desttype ], : + [ desttype ]
- Advanced Possibilities
- Object oriented interface
- Callback object
name, given
Thread Safety
Documentation and help texts
Parsing options from an arbitrary array
Parsing options from an arbitrary string
Storing options values in a hash
Bundling
The lonesome dash
Argument callback
- Configuring Getopt::Long
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)
- Exportable Methods
VersionMessage,
-message
,-msg
,-exitval
,-output
, HelpMessage- Return values and Errors
- Legacy
Default destinations
Alternative option starters
Configuration variables
- Tips and Techniques
Pushing multiple values in a hash option
- Troubleshooting
GetOptions does not return a false result when an option is not supplied
GetOptions does not split the command line correctly
Undefined subroutine &main::GetOptions called
How do I put a "-?" option into a Getopt::Long?
AUTHOR
COPYRIGHT AND DISCLAIMER
Getopt::Long::Parser - Getopt::Long object oriented interface
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
config
- METHODS
configure
getoptionsfromarray
getoptions
SEE ALSO
AUTHOR
COPYRIGHT AND DISCLAIMER
Getopt::Std - Process single-character switches with switch clustering
SYNOPSIS
DESCRIPTION
--help
and --version
HTTP::Tiny - A small, simple, correct HTTP/1.1 client
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
new
get|head|put|post|patch|delete
post_form
mirror
request
www_form_urlencode
can_ssl
connected
- TLS/SSL SUPPORT
- PROXY SUPPORT
- LIMITATIONS
- SEE ALSO
- SUPPORT
Bugs / Feature Requests
Source Code
AUTHORS
CONTRIBUTORS
COPYRIGHT AND LICENSE
Hash::Util - A selection of general-utility hash subroutines
- SYNOPSIS
- DESCRIPTION
- Restricted hashes
lock_keys, unlock_keys
lock_keys_plus
lock_value, unlock_value
lock_hash, unlock_hash
lock_hash_recurse, unlock_hash_recurse
hashref_locked, hash_locked
hashref_unlocked, hash_unlocked
legal_keys, hidden_keys, all_keys, hash_seed, hash_value, bucket_info, bucket_stats, bucket_array
bucket_stats_formatted
hv_store, hash_traversal_mask, bucket_ratio, used_buckets, num_buckets
- 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
CAVEATS
BUGS
AUTHOR
SEE ALSO
Hash::Util::FieldHash - Support for Inside-Out Classes
- SYNOPSIS
- FUNCTIONS
id, id_2obj, register, idhash, idhashes, fieldhash, fieldhashes
- DESCRIPTION
The Inside-out Technique
Problems of Inside-out
Solutions
More Problems
The Generic Object
How to use Field Hashes
Garbage-Collected Hashes
- EXAMPLES
init()
,first()
,last()
,name()
,Name_hash
,Name_id
,Name_idhash
,Name_id_reg
,Name_idhash_reg
,Name_fieldhash
Example 1
Example 2
- GUTS
The
PERL_MAGIC_uvar
interface for hashesWeakrefs call uvar magic
How field hashes work
Internal function Hash::Util::FieldHash::_fieldhash
AUTHOR
COPYRIGHT AND LICENSE
I18N::Collate - compare 8-bit scalar data according to the current locale
SYNOPSIS
DESCRIPTION
I18N::LangTags::Detect - detect the user's language preferences
SYNOPSIS
DESCRIPTION
FUNCTIONS
ENVIRONMENT
SEE ALSO
COPYRIGHT
AUTHOR
I18N::Langinfo - query locale information
- SYNOPSIS
- DESCRIPTION
-
,+
,.
,_NL_ADDRESS_POSTAL_FMT
,_NL_ADDRESS_COUNTRY_NAME
,_NL_ADDRESS_COUNTRY_POST
,_NL_ADDRESS_COUNTRY_AB2
,_NL_ADDRESS_COUNTRY_AB3
,_NL_ADDRESS_COUNTRY_CAR
,_NL_ADDRESS_COUNTRY_NUM
,_NL_ADDRESS_COUNTRY_ISBN
,_NL_ADDRESS_LANG_NAME
,_NL_ADDRESS_LANG_AB
,_NL_ADDRESS_LANG_TERM
,_NL_ADDRESS_LANG_LIB
,_NL_IDENTIFICATION_TITLE
,_NL_IDENTIFICATION_SOURCE
,_NL_IDENTIFICATION_ADDRESS
,_NL_IDENTIFICATION_CONTACT
,_NL_IDENTIFICATION_EMAIL
,_NL_IDENTIFICATION_TEL
,_NL_IDENTIFICATION_FAX
,_NL_IDENTIFICATION_LANGUAGE
,_NL_IDENTIFICATION_TERRITORY
,_NL_IDENTIFICATION_AUDIENCE
,_NL_IDENTIFICATION_APPLICATION
,_NL_IDENTIFICATION_ABBREVIATION
,_NL_IDENTIFICATION_REVISION
,_NL_IDENTIFICATION_DATE
,_NL_IDENTIFICATION_CATEGORY
,_NL_MEASUREMENT_MEASUREMENT
,_NL_NAME_NAME_FMT
,_NL_NAME_NAME_GEN
,_NL_NAME_NAME_MR
,_NL_NAME_NAME_MRS
,_NL_NAME_NAME_MISS
,_NL_NAME_NAME_MS
,_NL_PAPER_HEIGHT
,_NL_PAPER_WIDTH
,_NL_TELEPHONE_TEL_INT_FMT
,_NL_TELEPHONE_TEL_DOM_FMT
,_NL_TELEPHONE_INT_SELECT
,_NL_TELEPHONE_INT_PREFIX
- For systems without nl_langinfo
ERA
,CODESET
,YESEXPR
,YESSTR
,NOEXPR
,NOSTR
,ALT_DIGITS
,D_FMT
,T_FMT
,D_T_FMT
,CRNCYSTR
,ERA_D_FMT
,ERA_T_FMT
,ERA_D_T_FMT
,T_FMT_AMPM
, All_NL_foo
items
EXPORT
BUGS
SEE ALSO
AUTHOR
COPYRIGHT AND LICENSE
IO - load various IO modules
SYNOPSIS
DESCRIPTION
DEPRECATED
IO::Compress::Base - Base Class for IO::Compress modules
SYNOPSIS
DESCRIPTION
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::Bzip2 - Write bzip2 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- bzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeIn => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle
Oneshot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,BlockSize100K => number
,WorkFactor => number
,Strict => 0|1
Examples
- Methods
print
printf
syswrite
write
flush
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
newStream([OPTS])
- Importing
:all
- EXAMPLES
Apache::GZip Revisited
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::Deflate - Write RFC 1950 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- deflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeIn => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle
Oneshot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,Merge => 0|1
, -Level, -Strategy,Strict => 0|1
Examples
- Methods
print
printf
syswrite
write
flush
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
newStream([OPTS])
deflateParams
- Importing
:all, :constants, :flush, :level, :strategy
- EXAMPLES
Apache::GZip Revisited
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::FAQ -- Frequently Asked Questions about IO::Compress
- DESCRIPTION
- GENERAL
Compatibility with Unix compress/uncompress.
Accessing .tar.Z files
How do I recompress using a different compression?
- ZIP
- What Compression Types do IO::Compress::Zip & IO::Uncompress::Unzip support?
Store (method 0), Deflate (method 8), Bzip2 (method 12), Lzma (method 14)
Can I Read/Write Zip files larger the 4 Gig?
Can I write more that 64K entries is a Zip files?
Zip Resources
- GZIP
Gzip Resources
Dealing with concatenated gzip files
Reading bgzip files with IO::Uncompress::Gunzip
- ZLIB
Zlib Resources
- Bzip2
Bzip2 Resources
Dealing with Concatenated bzip2 files
Interoperating with Pbzip2
- HTTP & NETWORK
Apache::GZip Revisited
Compressed files and Net::FTP
- MISC
Using
InputLength
to uncompress data embedded in a larger file/buffer.
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::Gzip - Write RFC 1952 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- gzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeIn => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle
Oneshot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,Merge => 0|1
, -Level, -Strategy,Minimal => 0|1
,Comment => $comment
,Name => $string
,Time => $number
,TextFlag => 0|1
,HeaderCRC => 0|1
,OS_Code => $value
,ExtraField => $data
,ExtraFlags => $value
,Strict => 0|1
Examples
- Methods
print
printf
syswrite
write
flush
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
newStream([OPTS])
deflateParams
- Importing
:all, :constants, :flush, :level, :strategy
- EXAMPLES
Apache::GZip Revisited
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::RawDeflate - Write RFC 1951 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- rawdeflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeIn => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle
Oneshot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,Merge => 0|1
, -Level, -Strategy,Strict => 0|1
Examples
- Methods
print
printf
syswrite
write
flush
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
newStream([OPTS])
deflateParams
- Importing
:all, :constants, :flush, :level, :strategy
- EXAMPLES
Apache::GZip Revisited
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Compress::Zip - Write zip files/buffers
- SYNOPSIS
- DESCRIPTION
Store (0), Deflate (8), Bzip2 (12), Lzma (14), Zstandard (93), Xz (95)
- Functional Interface
- zip $input_filename_or_reference => $output_filename_or_reference [, OPTS]
A filename, A filehandle, A scalar reference, An array reference, An Input FileGlob string, the full filename contained in
$input_filename_or_reference
, 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- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeIn => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle
Oneshot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,Name => $string
, If the$input
parameter is not a filename, the archive member name will be an empty string,CanonicalName => 0|1
,FilterName => sub { ... }
,Efs => 0|1
,Minimal => 1|0
,Stream => 0|1
,Zip64 => 0|1
, -Level, -Strategy,BlockSize100K => number
,WorkFactor => number
,Preset => number
,Extreme => 0|1
,Time => $number
,ExtAttr => $attr
,exTime => [$atime, $mtime, $ctime]
,exUnix2 => [$uid, $gid]
,exUnixN => [$uid, $gid]
,Comment => $comment
,ZipComment => $comment
,Method => $method
,TextFlag => 0|1
,ExtraFieldLocal => $data
,ExtraFieldCentral => $data
,Strict => 0|1
Examples
- Methods
print
printf
syswrite
write
flush
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
newStream([OPTS])
deflateParams
- Importing
:all, :constants, :flush, :level, :strategy, :zip_method
- EXAMPLES
Apache::GZip Revisited
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Dir - supply object methods for directory handles
- SYNOPSIS
- DESCRIPTION
new ( [ DIRNAME ] ), open ( DIRNAME ), read (), seek ( POS ), tell (), rewind (), close (), tie
%hash
, 'IO::Dir', DIRNAME [, OPTIONS ]
SEE ALSO
AUTHOR
COPYRIGHT
IO::File - supply object methods for filehandles
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( FILENAME [,MODE [,PERMS]] ), new_tmpfile
- METHODS
open( FILENAME [,MODE [,PERMS]] ), open( FILENAME, IOLAYERS )
NOTE
SEE ALSO
HISTORY
IO::Handle - supply object methods for I/O handles
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new (), new_from_fd ( FD, MODE )
- METHODS
$io
->fdopen ( FD, MODE ),$io
->opened,$io
->getline,$io
->getlines,$io
->ungetc ( ORD ),$io
->write ( BUF, LEN [, OFFSET ] ),$io
->error,$io
->clearerr,$io
->sync,$io
->flush,$io
->printflush ( ARGS ),$io
->blocking ( [ BOOL ] ), binmode( [LAYER] ),$io
->untaint
NOTE
SEE ALSO
BUGS
HISTORY
IO::Pipe - supply object methods for pipes
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( [READER, WRITER] )
- METHODS
reader ([ARGS]), writer ([ARGS]), handles ()
SEE ALSO
AUTHOR
COPYRIGHT
IO::Poll - Object interface to system poll call
- SYNOPSIS
- DESCRIPTION
- METHODS
mask ( IO [, EVENT_MASK ] ), poll ( [ TIMEOUT ] ), events ( IO ), remove ( IO ), handles( [ EVENT_MASK ] )
SEE ALSO
AUTHOR
COPYRIGHT
IO::Seekable - supply seek based methods for I/O objects
- SYNOPSIS
- DESCRIPTION
$io
->getpos,$io
->setpos,$io
->seek ( POS, WHENCE ), WHENCE=0 (SEEK_SET), WHENCE=1 (SEEK_CUR), WHENCE=2 (SEEK_END),$io
->sysseek( POS, WHENCE ),$io
->tell
SEE ALSO
HISTORY
IO::Select - OO interface to the select system call
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( [ HANDLES ] )
- METHODS
add ( HANDLES ), remove ( HANDLES ), exists ( HANDLE ), handles, can_read ( [ TIMEOUT ] ), can_write ( [ TIMEOUT ] ), has_exception ( [ TIMEOUT ] ), count (), bits(), select ( READ, WRITE, EXCEPTION [, TIMEOUT ] )
EXAMPLE
AUTHOR
COPYRIGHT
IO::Socket - Object interface to socket communications
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR ARGUMENTS
Blocking
Domain
Listen
Timeout
Type
- CONSTRUCTORS
new
- METHODS
accept
atmark
autoflush
bind
connected
getsockopt
listen
peername
protocol
recv
send
setsockopt
shutdown
sockdomain
socket
socketpair
sockname
sockopt
socktype
timeout
EXAMPLES
LIMITATIONS
SEE ALSO
AUTHOR
COPYRIGHT
IO::Socket::INET - Object interface for AF_INET domain sockets
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( [ARGS] )
- METHODS
sockaddr (), sockport (), sockhost (), peeraddr (), peerport (), peerhost ()
SEE ALSO
AUTHOR
COPYRIGHT
IO::Socket::IP, IO::Socket::IP - Family-neutral IP socket supporting both IPv4 and IPv6
- SYNOPSIS
- DESCRIPTION
- REPLACING IO::Socket DEFAULT BEHAVIOUR
- CONSTRUCTORS
- new
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
- new (one arg)
- METHODS
- sockhost_service
- sockhost
- sockport
- sockhostname
- sockservice
- sockaddr
- peerhost_service
- peerhost
- peerport
- peerhostname
- peerservice
- peeraddr
- as_inet
- NON-BLOCKING
- PeerHost AND LocalHost PARSING
split_addr
join_addr
IO::Socket::INET
INCOMPATIBILITES
TODO
AUTHOR
IO::Socket::UNIX - Object interface for AF_UNIX domain sockets
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( [ARGS] )
- METHODS
hostpath(), peerpath()
SEE ALSO
AUTHOR
COPYRIGHT
IO::Uncompress::AnyInflate - Uncompress zlib-based (zip, gzip) file/buffer
- SYNOPSIS
- DESCRIPTION
RFC 1950, RFC 1951 (optionally), gzip (RFC 1952), zip
- Functional Interface
- anyinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
,RawInflate => 0|1
,ParseExtra => 0|1
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
- Methods
read
read
getline
getc
ungetc
inflateSync
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::AnyUncompress - Uncompress gzip, zip, bzip2, zstd, xz, lzma, lzip, lzf or lzop file/buffer
- SYNOPSIS
- DESCRIPTION
RFC 1950, RFC 1951 (optionally), gzip (RFC 1952), zip, zstd (Zstandard), bzip2, lzop, lzf, lzma, lzip, xz
- Functional Interface
- anyuncompress $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
,RawInflate => 0|1
,UnLzma => 0|1
- Methods
read
read
getline
getc
ungetc
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
EXAMPLES
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::Base - Base Class for IO::Uncompress modules
SYNOPSIS
DESCRIPTION
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::Bunzip2 - Read bzip2 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- bunzip2 $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
,Small => 0|1
- Methods
read
read
getline
getc
ungetc
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::Gunzip - Read RFC 1952 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- gunzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
,ParseExtra => 0|1
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
- Methods
- read
- read
- getline
- getc
- ungetc
- inflateSync
- getHeaderInfo
Name, Comment
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::Inflate - Read RFC 1950 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- inflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
- Methods
read
read
getline
getc
ungetc
inflateSync
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::RawInflate - Read RFC 1951 files/buffers
- SYNOPSIS
- DESCRIPTION
- Functional Interface
- rawinflate $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
- Methods
read
read
getline
getc
ungetc
inflateSync
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Uncompress::Unzip - Read zip files/buffers
- SYNOPSIS
- DESCRIPTION
Store (0), Deflate (8), Bzip2 (12), Lzma (14), Xz (95), Zstandard (93)
- Functional Interface
- unzip $input_filename_or_reference => $output_filename_or_reference [, OPTS]
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
- Notes
- Optional Parameters
AutoClose => 0|1
,BinModeOut => 0|1
,Append => 0|1
, A Buffer, A Filename, A Filehandle,MultiStream => 0|1
,TrailingData => $scalar
OneShot Examples
- OO Interface
- Constructor
A filename, A filehandle, A scalar reference
- Constructor Options
Name => "membername"
,Efs => 0| 1
,AutoClose => 0|1
,MultiStream => 0|1
,Prime => $string
,Transparent => 0|1
,BlockSize => $num
,InputLength => $size
,Append => 0|1
,Strict => 0|1
- Methods
read
read
getline
getc
ungetc
inflateSync
getHeaderInfo
tell
eof
seek
binmode
opened
autoflush
input_line_number
fileno
close
nextStream
trailingData
- Importing
:all
- EXAMPLES
Simple Read
Walking through a zip file
Unzipping a complete zip file to disk
Working with Net::FTP
SUPPORT
SEE ALSO
AUTHOR
MODIFICATION HISTORY
COPYRIGHT AND LICENSE
IO::Zlib - IO:: style interface to Compress::Zlib
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
new ( [ARGS] )
- 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 )
- USING THE EXTERNAL GZIP
- CLASS METHODS
has_Compress_Zlib, gzip_external, gzip_used, gzip_read_open, gzip_write_open
- 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
SEE ALSO
HISTORY
COPYRIGHT
IPC::Cmd - finding and running system commands made easy
- SYNOPSIS
- DESCRIPTION
- CLASS METHODS
$ipc_run_version
= IPC::Cmd->can_use_ipc_run( [VERBOSE] )- $ipc_open3_version = IPC::Cmd->can_use_ipc_open3( [VERBOSE] )
- $bool = IPC::Cmd->can_capture_buffer
- $bool = IPC::Cmd->can_use_run_forked
- FUNCTIONS
$path
= can_run( PROGRAM );- $ok | ($ok, $err, $full_buf, $stdout_buff, $stderr_buff) = run( command => COMMAND, [verbose => BOOL, buffer => \$SCALAR, timeout => DIGIT] );
command, verbose, buffer, timeout, success, error message, full_buffer, out_buffer, error_buffer
- $hashref = run_forked( COMMAND, { child_stdin => SCALAR, timeout => DIGIT, stdout_handler => CODEREF, stderr_handler => CODEREF} );
timeout
,child_stdin
,stdout_handler
,stderr_handler
,wait_loop_callback
,discard_output
,terminate_on_parent_sudden_death
,exit_code
,timeout
,stdout
,stderr
,merged
,err_msg
- $q = QUOTE
- HOW IT WORKS
- Global Variables
$IPC::Cmd::VERBOSE
$IPC::Cmd::USE_IPC_RUN
$IPC::Cmd::USE_IPC_OPEN3
$IPC::Cmd::WARN
$IPC::Cmd::INSTANCES
$IPC::Cmd::ALLOW_NULL_ARGS
- Caveats
Whitespace and IPC::Open3 / system(), Whitespace and IPC::Run, IO Redirect, Interleaving STDOUT/STDERR
See Also
ACKNOWLEDGEMENTS
BUG REPORTS
AUTHOR
COPYRIGHT
IPC::Msg - SysV Msg IPC object class
- SYNOPSIS
- DESCRIPTION
- METHODS
new ( KEY , FLAGS ), id, rcv ( BUF, LEN [, TYPE [, FLAGS ]] ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), snd ( TYPE, MSG [, FLAGS ] ), stat
SEE ALSO
AUTHORS
COPYRIGHT
IPC::Open2 - open a process for both reading and writing using open2()
SYNOPSIS
DESCRIPTION
WARNING
SEE ALSO
IPC::Open3 - open a process for reading, writing, and error handling using open3()
- SYNOPSIS
- DESCRIPTION
- See Also
IPC::Open2, IPC::Run
WARNING
IPC::Semaphore - SysV Semaphore IPC object class
- SYNOPSIS
- DESCRIPTION
- METHODS
new ( KEY , NSEMS , FLAGS ), getall, getncnt ( SEM ), getpid ( SEM ), getval ( SEM ), getzcnt ( SEM ), id, op ( OPLIST ), remove, set ( STAT ), set ( NAME => VALUE [, NAME => VALUE ...] ), setall ( VALUES ), setval ( N , VALUE ), stat
SEE ALSO
AUTHORS
COPYRIGHT
IPC::SysV - System V IPC constants and system calls
- SYNOPSIS
- DESCRIPTION
ftok( PATH ), ftok( PATH, ID ), shmat( ID, ADDR, FLAG ), shmdt( ADDR ), memread( ADDR, VAR, POS, SIZE ), memwrite( ADDR, STRING, POS, SIZE )
SEE ALSO
AUTHORS
COPYRIGHT
JSON::PP - JSON::XS compatible pure-Perl module.
- SYNOPSIS
- DESCRIPTION
- FUNCTIONAL INTERFACE
encode_json
decode_json
JSON::PP::is_bool
- OBJECT-ORIENTED INTERFACE
- new
- ascii
- latin1
- utf8
- pretty
- indent
- space_before
- space_after
- relaxed
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
canonical
allow_nonref
allow_unknown
allow_blessed
convert_blessed
allow_tags
boolean_values
core_bools
filter_json_object
filter_json_single_key_object
shrink
max_depth
max_size
encode
decode
decode_prefix
- FLAGS FOR JSON::PP ONLY
allow_singlequote
allow_barekey
allow_bignum
loose
escape_slash
indent_length
sort_by
- INCREMENTAL PARSING
incr_parse
incr_text
incr_skip
incr_reset
- MAPPING
- JSON -> PERL
object, array, string, number, true, false, null, shell-style comments (
# text
), tagged values ((tag)value
)- PERL -> JSON
hash references, array references, other references, JSON::PP::true, JSON::PP::false, JSON::PP::null, blessed objects, simple scalars
- OBJECT SERIALISATION
1.
allow_tags
is enabled and the object has aFREEZE
method, 2.convert_blessed
is enabled and the object has aTO_JSON
method, 3.allow_bignum
is enabled and the object is aMath::BigInt
orMath::BigFloat
, 4.allow_blessed
is enabled, 5. none of the above
- ENCODING/CODESET FLAG NOTES
utf8
flag disabled,utf8
flag enabled,latin1
orascii
flags enabled
BUGS
SEE ALSO
AUTHOR
CURRENT MAINTAINER
COPYRIGHT AND LICENSE
JSON::PP::Boolean - dummy module providing JSON::PP::Boolean
SYNOPSIS
DESCRIPTION
AUTHOR
LICENSE
List::Util - A selection of general-utility list subroutines
- SYNOPSIS
- DESCRIPTION
- LIST-REDUCTION FUNCTIONS
- reduce
- reductions
- any
- all
- none
- notall
- first
- max
- maxstr
- min
- minstr
- product
- sum
- sum0
- KEY/VALUE PAIR LIST FUNCTIONS
- pairs
- unpairs
- pairkeys
- pairvalues
- pairgrep
- pairfirst
- pairmap
- OTHER FUNCTIONS
- shuffle
- sample
- uniq
- uniqint
- uniqnum
- uniqstr
- head
- tail
- zip
- mesh
- CONFIGURATION VARIABLES
$RAND
- KNOWN BUGS
RT #95409
uniqnum() on oversized bignums
SUGGESTED ADDITIONS
SEE ALSO
COPYRIGHT
List::Util::XS - Indicate if List::Util was compiled with a C compiler
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT
Locale::Maketext - framework for localization
- SYNOPSIS
- DESCRIPTION
- QUICK OVERVIEW
- METHODS
- Construction Methods
- The "maketext" Method
$lh
->fail_with or$lh
->fail_with(PARAM),$lh
->failure_handler_auto,$lh
->denylist(@list) <or>$lh
->blacklist(@list),$lh
->allowlist(@list) <or>$lh
->whitelist(@list)- Utility Methods
$language
->quant($number,$singular
),$language
->quant($number,$singular
,$plural
),$language
->quant($number,$singular
,$plural
,$negative
),$language
->numf($number),$language
->numerate($number,$singular
,$plural
,$negative
),$language
->sprintf($format,@items
),$language
->language_tag(),$language
->encoding()
Language Handle Attributes and Internals
LANGUAGE CLASS HIERARCHIES
ENTRIES IN EACH LEXICON
BRACKET NOTATION
BRACKET NOTATION SECURITY
AUTO LEXICONS
READONLY LEXICONS
CONTROLLING LOOKUP FAILURE
HOW TO USE MAKETEXT
SEE ALSO
COPYRIGHT AND DISCLAIMER
AUTHOR
Locale::Maketext::Cookbook - recipes for using Locale::Maketext
INTRODUCTION
ONESIDED LEXICONS
DECIMAL PLACES IN NUMBER FORMATTING
Locale::Maketext::Guts - Deprecated module to load Locale::Maketext utf8 code
SYNOPSIS
DESCRIPTION
Locale::Maketext::GutsLoader - Deprecated module to load Locale::Maketext utf8 code
SYNOPSIS
DESCRIPTION
Locale::Maketext::Simple - Simple interface to Locale::Maketext::Lexicon
- VERSION
- SYNOPSIS
- DESCRIPTION
- OPTIONS
Class
Path
Style
Export
Subclass
Decode
Encoding
- ACKNOWLEDGMENTS
- SEE ALSO
- AUTHORS
- COPYRIGHT
The "MIT" License
Locale::Maketext::TPJ13 -- article about software localization
- SYNOPSIS
- DESCRIPTION
- Localization and Perl: gettext breaks, Maketext fixes
A Localization Horror Story: It Could Happen To You
The Linguistic View
Breaking gettext
Replacing gettext
Buzzwords: Abstraction and Encapsulation
Buzzword: Isomorphism
Buzzword: Inheritance
Buzzword: Concision
The Devil in the Details
The Proof in the Pudding: Localizing Web Sites
References
MIME::Base64 - Encoding and decoding of base64 strings
- SYNOPSIS
- DESCRIPTION
encode_base64(
$bytes
), encode_base64($bytes
,$eol
);, decode_base64($str
), encode_base64url($bytes
), decode_base64url($str
), encoded_base64_length($bytes
), encoded_base64_length($bytes
,$eol
), decoded_base64_length($str
)
EXAMPLES
COPYRIGHT
SEE ALSO
MIME::QuotedPrint - Encoding and decoding of quoted-printable strings
- SYNOPSIS
- DESCRIPTION
encode_qp(
$str
), encode_qp($str
,$eol
), encode_qp($str
,$eol
,$binmode
), decode_qp($str
)
COPYRIGHT
SEE ALSO
Math::BigFloat - arbitrary size floating point math package
- SYNOPSIS
- DESCRIPTION
Input
Output
- METHODS
- Configuration methods
accuracy(), precision()
- Constructor methods
from_hex(), from_oct(), from_bin(), from_ieee754(), bpi()
- Arithmetic methods
bmuladd(), binv(), bdiv(), bmod(), bexp(), bnok(), bsin(), bcos(), batan(), batan2(), as_float(), to_ieee754()
- ACCURACY AND PRECISION
- Rounding
bfround ( +$scale ), bfround ( -$scale ), bfround ( 0 ), bround ( +$scale ), bround ( -$scale ) and bround ( 0 )
- NUMERIC LITERALS
Hexadecimal, octal, and binary floating point literals
Math library
- EXPORTS
stringify, bstr(), brsft(), Modifying and =, precision() vs. accuracy()
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
Math::BigInt - arbitrary size integer math package
- SYNOPSIS
- DESCRIPTION
Input
Output
- METHODS
- Configuration methods
accuracy(), precision(), div_scale(), round_mode(), trap_inf(), trap_nan(), upgrade(), downgrade(), modify(), config()
- Constructor methods
new(), from_dec(), from_hex(), from_oct(), from_bin(), from_bytes(), from_base(), from_base_num(), bzero(), bone(), binf(), bnan(), bpi(), copy(), as_int(), as_number(), as_float(), as_rat()
- Boolean methods
is_zero(), is_one( [ SIGN ]), is_finite(), is_inf( [ SIGN ] ), is_nan(), is_positive(), is_pos(), is_negative(), is_neg(), is_non_positive(), is_non_negative(), is_odd(), is_even(), is_int()
- Comparison methods
bcmp(), bacmp(), beq(), bne(), blt(), ble(), bgt(), bge()
- Arithmetic methods
bneg(), babs(), bsgn(), bnorm(), binc(), bdec(), badd(), bsub(), bmul(), bmuladd(), binv(), bdiv(), btdiv(), bmod(), btmod(), bmodinv(), bmodpow(), bpow(), blog(), bexp(), bilog2(), bilog10(), bclog2(), bclog10(), bnok(), buparrow(), uparrow(), backermann(), ackermann(), bsin(), bcos(), batan(), batan2(), bsqrt(), broot(), bfac(), bdfac(), btfac(), bmfac(), bfib(), blucas(), brsft(), blsft()
- Bitwise methods
bbrsft(), bblsft(), band(), bior(), bxor(), bnot()
- Rounding methods
round(), bround(), bfround(), bfloor(), bceil(), bint()
- Other mathematical methods
bgcd(), blcm()
- Object property methods
sign(), digit(), digitsum(), bdigitsum(), length(), mantissa(), exponent(), parts(), sparts(), nparts(), eparts(), dparts(), fparts(), numerator(), denominator()
- String conversion methods
bstr(), bsstr(), bnstr(), bestr(), bdstr(), bfstr(), to_hex(), to_bin(), to_oct(), to_bytes(), to_base(), to_base_num(), as_hex(), as_bin(), as_oct(), as_bytes()
- Other conversion methods
numify()
- Utility methods
dec_str_to_dec_flt_str(), hex_str_to_dec_flt_str(), oct_str_to_dec_flt_str(), bin_str_to_dec_flt_str(), dec_str_to_dec_str(), hex_str_to_dec_str(), oct_str_to_dec_str(), bin_str_to_dec_str()
- ACCURACY and PRECISION
- Precision P
- Accuracy A
- Fallback F
- Rounding mode R
'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
- Infinity and Not a Number
oct()/hex()
- INTERNALS
MATH LIBRARY
SIGN
- EXAMPLES
- NUMERIC LITERALS
Hexadecimal, octal, and binary floating point literals
- PERFORMANCE
Alternative math libraries
- SUBCLASSING
Subclassing Math::BigInt
- UPGRADING
Auto-upgrade
- EXPORTS
- CAVEATS
Comparing numbers as strings, int(), Modifying and =, Overloading -$x, Mixing different object types
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
Math::BigInt::Calc - pure Perl module to support Math::BigInt
- SYNOPSIS
- DESCRIPTION
- OPTIONS
base_len, use_int
- METHODS
_base_len()
SEE ALSO
Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed
- SYNOPSIS
- DESCRIPTION
- STORAGE
- METHODS
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
AUTHORS
SEE ALSO
Math::BigInt::Lib - virtual parent class for Math::BigInt libraries
- SYNOPSIS
- DESCRIPTION
- General Notes
CLASS->api_version(), CLASS->_new(STR), CLASS->_zero(), CLASS->_one(), CLASS->_two(), CLASS->_ten(), 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->_ilog2(OBJ), CLASS->_ilog10(OBJ), CLASS->_clog2(OBJ), CLASS->_clog10(OBJ), 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)
- API version 2
CLASS->_1ex(N), CLASS->_nok(OBJ1, OBJ2), CLASS->_alen(OBJ)
- WRAP YOUR OWN
- BUGS
- SUPPORT
GitHub Source Repository, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
AUTHOR
SEE ALSO
Math::BigRat - arbitrary size rational number math package
- SYNOPSIS
- DESCRIPTION
MATH LIBRARY
- METHODS
new(), numerator(), denominator(), parts(), dparts(), fparts(), numify(), as_int(), as_number(), as_float(), as_hex(), as_bin(), as_oct(), from_hex(), from_oct(), from_bin(), bnan(), bzero(), binf(), bone(), length(), digit(), bnorm(), bfac(), bround()/round()/bfround(), bmod(), bmodinv(), bmodpow(), bneg(), is_one(), is_zero(), is_pos()/is_positive(), is_neg()/is_negative(), is_int(), is_odd(), is_even(), bceil(), bfloor(), bint(), bsqrt(), broot(), badd(), bmul(), bsub(), bdiv(), binv(), bdec(), binc(), copy(), bstr()/bsstr(), bcmp(), bacmp(), beq(), bne(), blt(), ble(), bgt(), bge(), blsft()/brsft(), band(), bior(), bxor(), bnot(), bpow(), blog(), bexp(), bnok(), config()
- NUMERIC LITERALS
Hexadecimal, octal, and binary floating point literals
- BUGS
- SUPPORT
GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix
LICENSE
SEE ALSO
AUTHORS
Math::Complex - complex numbers and associated mathematical functions
- SYNOPSIS
- DESCRIPTION
- OPERATIONS
- CREATION
- DISPLAYING
CHANGED IN PERL 5.6
- USAGE
- CONSTANTS
PI
Inf
ERRORS DUE TO DIVISION BY ZERO OR LOGARITHM OF ZERO
ERRORS DUE TO INDIGESTIBLE ARGUMENTS
BUGS
SEE ALSO
AUTHORS
LICENSE
Math::Trig - trigonometric functions
- SYNOPSIS
- DESCRIPTION
- TRIGONOMETRIC FUNCTIONS
tan
ERRORS DUE TO DIVISION BY ZERO
SIMPLE (REAL) ARGUMENTS, COMPLEX RESULTS
- PLANE ANGLE CONVERSIONS
deg2rad, grad2rad, rad2deg, grad2deg, deg2grad, rad2grad, rad2rad, deg2deg, grad2grad
- RADIAL COORDINATE CONVERSIONS
- COORDINATE SYSTEMS
- 3-D ANGLE CONVERSIONS
cartesian_to_cylindrical, cartesian_to_spherical, cylindrical_to_cartesian, cylindrical_to_spherical, spherical_to_cartesian, spherical_to_cylindrical
- GREAT CIRCLE DISTANCES AND DIRECTIONS
great_circle_distance
great_circle_direction
great_circle_bearing
great_circle_destination
great_circle_midpoint
great_circle_waypoint
- EXAMPLES
- CAVEAT FOR GREAT CIRCLE FORMULAS
- Real-valued asin and acos
asin_real, acos_real
BUGS
SEE ALSO
AUTHORS
LICENSE
Memoize - Make functions faster by trading space for time
- SYNOPSIS
- DESCRIPTION
- EXAMPLE
- DETAILS
- OPTIONS
- INSTALL
- NORMALIZER
- SCALAR_CACHE, LIST_CACHE
MEMORY
,HASH
,TIE
,FAULT
,MERGE
- OTHER FACILITIES
unmemoize
flush_cache
CAVEATS
PERSISTENT CACHE SUPPORT
EXPIRATION SUPPORT
BUGS
SEE ALSO
THANK YOU
AUTHOR
COPYRIGHT AND LICENSE
Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use
DESCRIPTION
Memoize::Expire - Plug-in module for automatic expiration of memoized values
- SYNOPSIS
- DESCRIPTION
- INTERFACE
TIEHASH, EXISTS, STORE
ALTERNATIVES
CAVEATS
AUTHOR
SEE ALSO
Memoize::NDBM_File - glue to provide EXISTS for NDBM_File for Storable use
DESCRIPTION
Memoize::SDBM_File - DEPRECATED compability shim
DESCRIPTION
Memoize::Storable - store Memoized data in Storable database
DESCRIPTION
Module::CoreList - what modules shipped with versions of perl
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS API
first_release( MODULE )
,first_release_by_date( MODULE )
,find_modules( REGEX, [ LIST OF PERLS ] )
,find_version( PERL_VERSION )
,is_core( MODULE, [ MODULE_VERSION, [ PERL_VERSION ] ] )
,is_deprecated( MODULE, PERL_VERSION )
,deprecated_in( MODULE )
,removed_from( MODULE )
,removed_from_by_date( MODULE )
,changes_between( PERL_VERSION, PERL_VERSION )
- DATA STRUCTURES
%Module::CoreList::version
,%Module::CoreList::delta
,%Module::CoreList::released
,%Module::CoreList::families
,%Module::CoreList::deprecated
,%Module::CoreList::upstream
,%Module::CoreList::bug_tracker
CAVEATS
HISTORY
AUTHOR
LICENSE
SEE ALSO
Module::CoreList::Utils - what utilities shipped with versions of perl
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS API
utilities
,first_release( UTILITY )
,first_release_by_date( UTILITY )
,removed_from( UTILITY )
,removed_from_by_date( UTILITY )
- DATA STRUCTURES
%Module::CoreList::Utils::utilities
AUTHOR
LICENSE
SEE ALSO
Module::Load - runtime require of both modules and files
- SYNOPSIS
- DESCRIPTION
Difference between
load
andautoload
- FUNCTIONS
load, autoload, load_remote, autoload_remote
- Rules
- IMPORTS THE FUNCTIONS
"load","autoload","load_remote","autoload_remote", 'all', '','none',undef
Caveats
SEE ALSO
ACKNOWLEDGEMENTS
BUG REPORTS
AUTHOR
COPYRIGHT
Module::Load::Conditional - Looking up module information / loading at runtime
- SYNOPSIS
- DESCRIPTION
- Methods
- $href = check_install( module => NAME [, version => VERSION, verbose => BOOL ] );
module, version, verbose, file, dir, version, uptodate
- $bool = can_load( modules => { NAME => VERSION [,NAME => VERSION] }, [verbose => BOOL, nocache => BOOL, autoload => BOOL] )
modules, verbose, nocache, autoload
- @list = requires( MODULE );
- Global Variables
$Module::Load::Conditional::VERBOSE
$Module::Load::Conditional::FIND_VERSION
$Module::Load::Conditional::CHECK_INC_HASH
$Module::Load::Conditional::FORCE_SAFE_INC
$Module::Load::Conditional::CACHE
$Module::Load::Conditional::ERROR
$Module::Load::Conditional::DEPRECATED
See Also
BUG REPORTS
AUTHOR
COPYRIGHT
Module::Loaded - mark modules as loaded or unloaded
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
$bool
= mark_as_loaded( PACKAGE );
$bool
= mark_as_unloaded( PACKAGE );
$loc
= is_loaded( PACKAGE );
BUG REPORTS
AUTHOR
COPYRIGHT
Module::Metadata - Gather package and POD information from perl module files
- VERSION
- SYNOPSIS
- DESCRIPTION
- CLASS METHODS
- new_from_file($filename, collect_pod => 1, decode_pod => 1)
- new_from_handle($handle, $filename, collect_pod => 1, decode_pod => 1)
- new_from_module($module, collect_pod => 1, inc => \@dirs, decode_pod => 1)
- find_module_by_name($module, \@dirs)
- find_module_dir_by_name($module, \@dirs)
- provides( %options )
version (required), dir, files, prefix
package_versions_from_directory($dir, \@files?)
log_info (internal)
- OBJECT METHODS
name()
version($package)
filename()
packages_inside()
pod_inside()
contains_pod()
pod($section)
is_indexable($package)
oris_indexable()
SUPPORT
AUTHOR
CONTRIBUTORS
COPYRIGHT & LICENSE
NDBM_File - Tied access to ndbm files
- SYNOPSIS
- DESCRIPTION
O_RDONLY
,O_WRONLY
,O_RDWR
- DIAGNOSTICS
ndbm store returned -1, errno 22, key "..." at ...
SECURITY AND PORTABILITY
BUGS AND WARNINGS
NEXT - Provide a pseudo-class NEXT (et al) that allows method redispatch
- SYNOPSIS
- DESCRIPTION
Enforcing redispatch
Avoiding repetitions
Invoking all versions of a method with a single call
Using
EVERY
methods
SEE ALSO
AUTHOR
BUGS AND IRRITATIONS
COPYRIGHT
Net::Cmd - Network Command class (as used by FTP, SMTP etc)
- SYNOPSIS
- DESCRIPTION
- Public Methods
debug($level)
,message()
,code()
,ok()
,status()
,datasend($data)
,dataend()
- Protected Methods
debug_print($dir, $text)
,debug_text($dir, $text)
,command($cmd[, $args, ... ])
,unsupported()
,response()
,parse_response($text)
,getline()
,ungetline($text)
,rawdatasend($data)
,read_until_dot()
,tied_fh()
- Pseudo Responses
Initial value, Connection closed, Timeout
- EXPORTS
Default Exports, Optional Exports, Export Tags
KNOWN BUGS
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::Config - Local configuration data for libnet
- SYNOPSIS
- DESCRIPTION
- Class Methods
requires_firewall($host)
- 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
- EXPORTS
Default Exports, Optional Exports, Export Tags
KNOWN BUGS
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::Domain - Attempt to evaluate the current host's internet name and domain
- SYNOPSIS
- DESCRIPTION
- Functions
hostfqdn()
,domainname()
,hostname()
,hostdomain()
- EXPORTS
Default Exports, Optional Exports, Export Tags
KNOWN BUGS
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::FTP - FTP Client class
- SYNOPSIS
- DESCRIPTION
- Overview
- Class Methods
new([$host][, %options])
- Object Methods
login([$login[, $password[, $account]]])
,starttls()
,stoptls()
,prot($level)
,host()
,account($acct)
,authorize([$auth[, $resp]])
,site($args)
,ascii()
,binary()
,type([$type])
,rename($oldname, $newname)
,delete($filename)
,cwd([$dir])
,cdup()
,passive([$passive])
,pwd()
,restart($where)
,rmdir($dir[, $recurse])
,mkdir($dir[, $recurse])
,alloc($size[, $record_size])
,ls([$dir])
,dir([$dir])
,get($remote_file[, $local_file[, $where]])
,put($local_file[, $remote_file])
,put_unique($local_file[, $remote_file])
,append($local_file[, $remote_file])
,unique_name()
,mdtm($file)
,size($file)
,supported($cmd)
,hash([$filehandle_glob_ref[, $bytes_per_hash_mark]])
,feature($name)
,nlst([$dir])
,list([$dir])
,retr($file)
,stor($file)
,stou($file)
,appe($file)
,port([$port])
,eprt([$port])
,pasv()
,epsv()
,pasv_xfer($src_file, $dest_server[, $dest_file ])
,pasv_xfer_unique($src_file, $dest_server[, $dest_file ])
,pasv_wait($non_pasv_server)
,abort()
,quit()
- Methods for the Adventurous
quot($cmd[, $args])
,can_inet6()
,can_ssl()
- The dataconn Class
- Unimplemented
SMNT
,HELP
,MODE
,SYST
,STAT
,STRU
,REIN
- EXPORTS
- KNOWN BUGS
Reporting Bugs
SEE ALSO
ACKNOWLEDGEMENTS
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::NNTP - NNTP Client class
- SYNOPSIS
- DESCRIPTION
- Class Methods
new([$host][, %options])
- Object Methods
host()
,starttls()
,article([{$msgid|$msgnum}[, $fh]])
,body([{$msgid|$msgnum}[, [$fh]])
,head([{$msgid|$msgnum}[, [$fh]])
,articlefh([{$msgid|$msgnum}])
,bodyfh([{$msgid|$msgnum}])
,headfh([{$msgid|$msgnum}])
,nntpstat([{$msgid|$msgnum}])
,group([$group])
,help()
,ihave($msgid[, $message])
,last()
,date()
,postok()
,authinfo($user, $pass)
,authinfo_simple($user, $pass)
,list()
,newgroups($since[, $distributions])
,newnews($since[, $groups[, $distributions]])
,next()
,post([$message])
,postfh()
,slave()
,quit()
,can_inet6()
,can_ssl()
- Extension Methods
newsgroups([$pattern])
,distributions()
,distribution_patterns()
,subscriptions()
,overview_fmt()
,active_times()
,active([$pattern])
,xgtitle($pattern)
,xhdr($header, $message_spec)
,xover($message_spec)
,xpath($message_id)
,xpat($header, $pattern, $message_spec)
,xrover($message_spec)
,listgroup([$group])
,reader()
- Unsupported
- Definitions
$message_spec
,$pattern
, Examples,[^]-]
,*bdc
,[0-9a-zA-Z]
,a??d
EXPORTS
KNOWN BUGS
SEE ALSO
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::Netrc - OO interface to users netrc file
- SYNOPSIS
- DESCRIPTION
- The .netrc File
machine name, default, login name, password string, account string, macdef name
- Class Methods
lookup($machine[, $login])
- Object Methods
login()
,password()
,account()
,lpa()
EXPORTS
KNOWN BUGS
SEE ALSO
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::POP3 - Post Office Protocol 3 Client class (RFC1939)
- SYNOPSIS
- DESCRIPTION
- Class Methods
new([$host][, %options])
- Object Methods
host()
,auth($username, $password)
,user($user)
,pass($pass)
,login([$user[, $pass]])
,starttls(%sslargs)
,apop([$user[, $pass]])
,banner()
,capa()
,capabilities()
,top($msgnum[, $numlines])
,list([$msgnum])
,get($msgnum[, $fh])
,getfh($msgnum)
,last()
,popstat()
,ping($user)
,uidl([$msgnum])
,delete($msgnum)
,reset()
,quit()
,can_inet6()
,can_ssl()
Notes
EXPORTS
KNOWN BUGS
SEE ALSO
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::Ping - check a remote host for reachability
- SYNOPSIS
- DESCRIPTION
- Functions
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]) ,$p
->ping($host [,$timeout
[,$family
]]); ,$p
->source_verify( { 0 | 1 } ); ,$p
->service_check( { 0 | 1 } ); ,$p
->tcp_service_check( { 0 | 1 } ); ,$p
->hires( { 0 | 1 } ); ,$p
->time ,$p
->socket_blocking_mode($fh
,$mode
); ,$p
->IPV6_USE_MIN_MTU ,$p
->IPV6_RECVPATHMTU ,$p
->IPV6_HOPLIMIT ,$p
->IPV6_REACHCONF NYI ,$p
->bind($local_addr); ,$p
->message_type([$ping_type]); ,$p
->open($host); ,$p
->ack( [$host
] ); ,$p
->nack($failed_ack_host
); ,$p
->ack_unfork($host) ,$p
->ping_icmp([$host,$timeout
,$family
]) ,$p
->ping_icmpv6([$host,$timeout
,$family
]) ,$p
->ping_stream([$host,$timeout
,$family
]) ,$p
->ping_syn([$host,$ip
,$start_time
,$stop_time
]) ,$p
->ping_syn_fork([$host,$timeout
,$family
]) ,$p
->ping_tcp([$host,$timeout
,$family
]) ,$p
->ping_udp([$host,$timeout
,$family
]) ,$p
->ping_external([$host,$timeout
,$family
]) ,$p
->tcp_connect([$ip,$timeout
]) ,$p
->tcp_echo([$ip,$timeout
,$pingstring
]) ,$p
->close(); ,$p
->port_number([$port_number]) ,$p
->mselect ,$p
->ntop ,$p
->checksum($msg) ,$p
->icmp_result , pingecho($host [,$timeout
]); , wakeonlan($mac, [$host, [$port]])
NOTES
INSTALL
BUGS
AUTHORS
COPYRIGHT
Net::SMTP - Simple Mail Transfer Protocol Client
- SYNOPSIS
- DESCRIPTION
- Class Methods
new([$host][, %options])
- Object Methods
banner()
,domain()
,hello($domain)
,host()
,etrn($domain)
,starttls(%sslargs)
,auth($username, $password)
,auth($sasl)
,mail($address[, %options])
,send($address)
,send_or_mail($address)
,send_and_mail($address)
,reset()
,recipient($address[, $address[, ...]][, %options])
,to($address[, $address[, ...]])
,cc($address[, $address[, ...]])
,bcc($address[, $address[, ...]])
,data([$data])
,bdat($data)
,bdatlast($data)
,expand($address)
,verify($address)
,help([$subject])
,quit()
,can_inet6()
,can_ssl()
Addresses
EXAMPLES
EXPORTS
KNOWN BUGS
SEE ALSO
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::Time - time and daytime network client interface
- SYNOPSIS
- DESCRIPTION
- Functions
inet_time([$host[, $protocol[, $timeout]]])
,inet_daytime([$host[, $protocol[, $timeout]]])
- EXPORTS
Default Exports, Optional Exports, Export Tags
KNOWN BUGS
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Net::hostent - by-name interface to Perl's built-in gethost*() functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
Net::libnetFAQ, libnetFAQ - libnet Frequently Asked Questions
- DESCRIPTION
Where to get this document
How to contribute to this document
- Author and Copyright Information
Disclaimer
- Obtaining and installing libnet
What is libnet ?
Which version of perl do I need ?
What other modules do I need ?
What machines support libnet ?
Where can I get the latest libnet release
- Using Net::FTP
How do I download files from an FTP server ?
How do I transfer files in binary mode ?
How can I get the size of a file on a remote FTP server ?
How can I get the modification time of a file on a remote FTP server ?
How can I change the permissions of a file on a remote server ?
Can I do a reget operation like the ftp command ?
How do I get a directory listing from an FTP server ?
Changing directory to "" does not fail ?
I am behind a SOCKS firewall, but the Firewall option does not work ?
I am behind an FTP proxy firewall, but cannot access machines outside ?
My ftp proxy firewall does not listen on port 21
Is it possible to change the file permissions of a file on an FTP server ?
I have seen scripts call a method message, but cannot find it documented ?
Why does Net::FTP not implement mput and mget methods
- Using Net::SMTP
Why can't the part of an Email address after the @ be used as the hostname ?
Why does Net::SMTP not do DNS MX lookups ?
The verify method always returns true ?
- Debugging scripts
How can I debug my scripts that use Net::* modules ?
AUTHOR AND COPYRIGHT
Net::netent - by-name interface to Perl's built-in getnet*() functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
Net::protoent - by-name interface to Perl's built-in getproto*() functions
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Net::servent - by-name interface to Perl's built-in getserv*() functions
SYNOPSIS
DESCRIPTION
EXAMPLES
NOTE
AUTHOR
O - Generic interface to Perl Compiler backends
SYNOPSIS
DESCRIPTION
CONVENTIONS
IMPLEMENTATION
BUGS
AUTHOR
ODBM_File - Tied access to odbm files
- SYNOPSIS
- DESCRIPTION
O_RDONLY
,O_WRONLY
,O_RDWR
- DIAGNOSTICS
odbm store returned -1, errno 22, key "..." at ...
SECURITY AND PORTABILITY
BUGS AND WARNINGS
Opcode - Disable named opcodes when compiling perl code
- SYNOPSIS
- DESCRIPTION
- NOTE
- WARNING
- Operator Names and Operator Lists
an operator name (opname), an operator tag name (optag), a negated opname or optag, an operator set (opset)
- 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)
- Manipulating Opsets
- TO DO (maybe)
- Predefined Opcode Tags
: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
SEE ALSO
AUTHORS
POSIX - Perl interface to IEEE Std 1003.1
- SYNOPSIS
- DESCRIPTION
- CAVEATS
- FUNCTIONS
_exit
,abort
,abs
,access
,acos
,acosh
,alarm
,asctime
,asin
,asinh
,assert
,atan
,atanh
,atan2
,atexit
,atof
,atoi
,atol
,bsearch
,calloc
,cbrt
,ceil
,chdir
,chmod
,chown
,clearerr
,clock
,close
,closedir
,cos
,cosh
,copysign
,creat
,ctermid
,ctime
,cuserid
[POSIX.1-1988],difftime
,div
,dup
,dup2
,erf
,erfc
,errno
,execl
,execle
,execlp
,execv
,execve
,execvp
,exit
,exp
,expm1
,fabs
,fcntl
,fdopen
,feof
,ferror
,fflush
,fgetc
,fgetpos
,fgets
,fileno
,floor
,fdim
,fegetround
,fesetround
,fma
,fmax
,fmin
,fmod
,fopen
,fork
,fpathconf
,fpclassify
,fprintf
,fputc
,fputs
,fread
,free
,freopen
,frexp
,fscanf
,fseek
,fsetpos
,fstat
,fsync
,ftell
,fwrite
,getc
,getchar
,getcwd
,getegid
,getenv
,geteuid
,getgid
,getgrgid
,getgrnam
,getgroups
,getlogin
,getpayload
,getpgrp
,getpid
,getppid
,getpwnam
,getpwuid
,gets
,getuid
,gmtime
,hypot
,ilogb
,Inf
,isalnum
,isalpha
,isatty
,iscntrl
,isdigit
,isfinite
,isgraph
,isgreater
,isinf
,islower
,isnan
,isnormal
,isprint
,ispunct
,issignaling
,isspace
,isupper
,isxdigit
,j0
,j1
,jn
,y0
,y1
,yn
,kill
,labs
,lchown
,ldexp
,ldiv
,lgamma
,log1p
,log2
,logb
,link
,localeconv
,localtime
,log
,log10
,longjmp
,lseek
,lrint
,lround
,malloc
,mblen
,mbtowc
,memchr
,memcmp
,memcpy
,memmove
,memset
,mkdir
,mkfifo
,mktime
,modf
,NaN
,nan
,nearbyint
,nextafter
,nexttoward
,nice
,offsetof
,open
,opendir
,pathconf
,pause
,perror
,pipe
,pow
,printf
,putc
,putchar
,puts
,qsort
,raise
,rand
,read
,readdir
,realloc
,remainder
,remove
,remquo
,rename
,rewind
,rewinddir
,rint
,rmdir
,round
,scalbn
,scanf
,setgid
,setjmp
,setlocale
,setpayload
,setpayloadsig
,setpgid
,setsid
,setuid
,sigaction
,siglongjmp
,signbit
,sigpending
,sigprocmask
,sigsetjmp
,sigsuspend
,sin
,sinh
,sleep
,sprintf
,sqrt
,srand
,sscanf
,stat
,strcat
,strchr
,strcmp
,strcoll
,strcpy
,strcspn
,strerror
,strftime
,strlen
,strncat
,strncmp
,strncpy
,strpbrk
,strrchr
,strspn
,strstr
,strtod
,strtok
,strtol
,strtold
,strtoul
,strxfrm
,sysconf
,system
,tan
,tanh
,tcdrain
,tcflow
,tcflush
,tcgetpgrp
,tcsendbreak
,tcsetpgrp
,tgamma
,time
,times
,tmpfile
,tmpnam
,tolower
,toupper
,trunc
,ttyname
,tzname
,tzset
,umask
,uname
,ungetc
,unlink
,utime
,vfprintf
,vprintf
,vsprintf
,wait
,waitpid
,wctomb
,write
- CLASSES
- POSIX::SigAction
new
,handler
,mask
,flags
,safe
- POSIX::SigRt
%SIGRT
,SIGRTMIN
,SIGRTMAX
- POSIX::SigSet
new
,addset
,delset
,emptyset
,fillset
,ismember
- POSIX::Termios
new
,getattr
,getcc
,getcflag
,getiflag
,getispeed
,getlflag
,getoflag
,getospeed
,setattr
,setcc
,setcflag
,setiflag
,setispeed
,setlflag
,setoflag
,setospeed
, Baud rate values, Terminal interface values,c_cc
field values,c_cflag
field values,c_iflag
field values,c_lflag
field values,c_oflag
field values
- PATHNAME CONSTANTS
Constants
- POSIX CONSTANTS
Constants
- RESOURCE CONSTANTS
Constants
- SYSTEM CONFIGURATION
Constants
- ERRNO
Constants
- FCNTL
Constants
- FLOAT
Constants
- FLOATING-POINT ENVIRONMENT
Constants
- LIMITS
Constants
- LOCALE
Constants
- MATH
Constants
- SIGNAL
Constants
- STAT
Constants, Macros
- STDLIB
Constants
- STDIO
Constants
- TIME
Constants
- UNISTD
Constants
- WAIT
Constants,
WNOHANG
,WUNTRACED
, Macros,WIFEXITED
,WEXITSTATUS
,WIFSIGNALED
,WTERMSIG
,WIFSTOPPED
,WSTOPSIG
- WINSOCK
Constants
Params::Check - A generic input parsing/checking mechanism.
- SYNOPSIS
- DESCRIPTION
- Template
default, required, strict_type, defined, no_override, store, allow
- Functions
- check( \%tmpl, \%args, [$verbose] );
Template, Arguments, Verbose
- allow( $test_me, \@criteria );
string, regexp, subroutine, array ref
- last_error()
- Global Variables
$Params::Check::VERBOSE
$Params::Check::STRICT_TYPE
$Params::Check::ALLOW_UNKNOWN
$Params::Check::STRIP_LEADING_DASHES
$Params::Check::NO_DUPLICATES
$Params::Check::PRESERVE_CASE
$Params::Check::ONLY_ALLOW_DEFINED
$Params::Check::SANITY_CHECK_TEMPLATE
$Params::Check::WARNINGS_FATAL
$Params::Check::CALLER_DEPTH
Acknowledgements
BUG REPORTS
AUTHOR
COPYRIGHT
Parse::CPAN::Meta - Parse META.yml and META.json CPAN metadata files
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
load_file
load_yaml_string
load_json_string
load_string
yaml_backend
json_backend
json_decoder
- FUNCTIONS
Load
LoadFile
- ENVIRONMENT
CPAN_META_JSON_DECODER
CPAN_META_JSON_BACKEND
PERL_JSON_BACKEND
PERL_YAML_BACKEND
AUTHORS
COPYRIGHT AND LICENSE
Perl::OSType - Map Perl operating system names to generic types
- VERSION
- SYNOPSIS
- DESCRIPTION
- USAGE
os_type()
is_os_type()
- SEE ALSO
- SUPPORT
Bugs / Feature Requests
Source Code
AUTHOR
CONTRIBUTORS
COPYRIGHT AND LICENSE
PerlIO - On demand loader for PerlIO layers and root of PerlIO::* name space
- SYNOPSIS
- DESCRIPTION
- Layers
:unix, :stdio, :perlio, :crlf, :utf8, :bytes, :raw, :pop
- Custom Layers
:encoding, :mmap, :via, :scalar
Alternatives to raw
Defaults and how to override them
Querying the layers of filehandles
AUTHOR
SEE ALSO
PerlIO::encoding - encoding layer
SYNOPSIS
DESCRIPTION
SEE ALSO
PerlIO::mmap - Memory mapped IO
SYNOPSIS
DESCRIPTION
IMPLEMENTATION NOTE
PerlIO::scalar - in-memory IO, scalar IO
SYNOPSIS
DESCRIPTION
IMPLEMENTATION NOTE
PerlIO::via - Helper class for PerlIO layers implemented in perl
- SYNOPSIS
- DESCRIPTION
- EXPECTED METHODS
$class
->PUSHED([$mode,[$fh]]),$obj
->POPPED([$fh]),$obj
->UTF8($belowFlag,[$fh]),$obj
->OPEN($path,$mode,[$fh]),$obj
->BINMODE([$fh]),$obj
->FDOPEN($fd,[$fh]),$obj
->SYSOPEN($path,$imode,$perm,[$fh]),$obj
->FILENO($fh),$obj
->READ($buffer,$len,$fh),$obj
->WRITE($buffer,$fh),$obj
->FILL($fh),$obj
->CLOSE($fh),$obj
->SEEK($posn,$whence,$fh),$obj
->TELL($fh),$obj
->UNREAD($buffer,$fh),$obj
->FLUSH($fh),$obj
->SETLINEBUF($fh),$obj
->CLEARERR($fh),$obj
->ERROR($fh),$obj
->EOF($fh)- EXAMPLES
Example - a Hexadecimal Handle
PerlIO::via::QuotedPrint - PerlIO layer for quoted-printable strings
SYNOPSIS
DESCRIPTION
EXPORTS
KNOWN BUGS
FEEDBACK
SEE ALSO
ACKNOWLEDGEMENTS
AVAILABILITY
INSTALLATION
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Pod::Checker - check pod documents for syntax errors
- SYNOPSIS
- OPTIONS/ARGUMENTS
- podchecker()
-warnings => val, -quiet => val
- DESCRIPTION
- DIAGNOSTICS
- Errors
empty =headn, =over on line N without closing =back, You forgot a '=back' before '=headN', =over is the last thing in the document?!, '=item' outside of any '=over', =back without =over, Can't have a 0 in =over N, =over should be: '=over' or '=over positive_number', =begin TARGET without matching =end TARGET, =begin without a target?, =end TARGET without matching =begin, '=end' without a target?, '=end TARGET' is invalid, =end CONTENT doesn't match =begin TARGET, =for without a target?, unresolved internal link NAME, Unknown directive: CMD, Deleting unknown formatting code SEQ, Unterminated SEQ<> sequence, An E<...> surrounding strange content, An empty E<>, An empty
L<>
, An empty X<>, Spurious text after =pod / =cut, =back doesn't take any parameters, but you said =back ARGUMENT, =pod directives shouldn't be over one line long! Ignoring all N lines of content, =cut found outside a pod block, Invalid =encoding syntax: CONTENT- Warnings
nested commands CMD<...CMD<...>...>, multiple occurrences (N) of link target name, line containing nothing but whitespace in paragraph, =item has no contents, You can't have =items (as at line N) unless the first thing after the =over is an =item, Expected '=item EXPECTED VALUE', Expected '=item *', Possible =item type mismatch: 'x' found leading a supposed definition =item, You have '=item x' instead of the expected '=item N', Unknown E content in E<CONTENT>, empty =over/=back block, empty section in previous paragraph, Verbatim paragraph in NAME section, =headn without preceding higher level, A non-empty Z<>
- Hyperlinks
ignoring leading/trailing whitespace in link, alternative text/node '%s' contains non-escaped | or /
- RETURN VALUE
- EXAMPLES
- SCRIPTS
- INTERFACE
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
Pod::Checker->new( %options )
$checker->poderror( @args )
, $checker->poderror( {%opts}, @args )
$checker->num_errors()
$checker->num_warnings()
$checker->name()
$checker->node()
$checker->idx()
$checker->hyperlinks()
line()
type()
page()
node()
AUTHOR
Pod::Escapes - for resolving Pod E<...> sequences
- SYNOPSIS
- DESCRIPTION
- GOODIES
e2char($e_content), e2charnum($e_content),
$Name2character
{name},$Name2character_number
{name},$Latin1Code_to_fallback
{integer},$Latin1Char_to_fallback
{character},$Code2USASCII
{integer}
CAVEATS
SEE ALSO
REPOSITORY
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Html - module to convert pod files to HTML
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
- pod2html
backlink, cachedir, css, flush, header, help, htmldir, htmlroot, index, infile, outfile, poderrors, podpath, podroot, quiet, recurse, title, verbose
- Formerly Exported Auxiliary Functions
htmlify()
(by default),anchorify()
(upon request),relativize_url()
(upon request)
ENVIRONMENT
AUTHOR
SEE ALSO
COPYRIGHT
Pod::Html::Util - helper functions for Pod-Html
SUBROUTINES
process_command_line()
usage()
unixify()
relativize_url()
html_escape()
htmlify()
anchorify()
trim_leading_whitespace()
Pod::Man - Convert POD data to formatted *roff input
- SYNOPSIS
- DESCRIPTION
- CLASS METHODS
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
- 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)
- ENCODING
- History
- Testing results
[1], [2], [3]
- DIAGNOSTICS
roff font should be 1 or 2 chars, not "%s", Invalid errors setting "%s", Invalid quote specification "%s", POD document had syntax errors
- ENVIRONMENT
PERL_CORE, POD_MAN_DATE, SOURCE_DATE_EPOCH
- COMPATIBILITY
- BUGS
- CAVEATS
Sentence spacing
Hyphens
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::ParseLink - Parse an L<> formatting code in POD text
SYNOPSIS
DESCRIPTION
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::Perldoc - Look up Perl documentation in Pod format.
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::BaseTo - Base for Pod::Perldoc formatters
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::GetOptsOO - Customized option parser for Pod::Perldoc
- SYNOPSIS
- DESCRIPTION
Call Pod::Perldoc::GetOptsOO::getopts($object, \@ARGV,
$truth
), Given -n, if there's a opt_n_with, it'll call$object
->opt_n_with( ARGUMENT ) (e.g., "-n foo" =>$object
->opt_n_with('foo'). Ditto "-nfoo"), Otherwise (given -n) if there's an opt_n, we'll call it$object
->opt_n($truth) (Truth defaults to 1), Otherwise we try calling$object
->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
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToANSI - render Pod with ANSI color escapes
SYNOPSIS
DESCRIPTION
CAVEAT
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToChecker - let Perldoc check Pod for errors
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToMan - let Perldoc render Pod as man pages
SYNOPSIS
DESCRIPTION
CAVEAT
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToNroff - let Perldoc convert Pod to nroff
SYNOPSIS
DESCRIPTION
CAVEAT
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToPod - let Perldoc render Pod as ... Pod!
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToRtf - let Perldoc render Pod as RTF
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToTerm - render Pod with terminal escapes
SYNOPSIS
DESCRIPTION
PAGER FORMATTING
CAVEAT
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToText - let Perldoc render Pod as plaintext
SYNOPSIS
DESCRIPTION
CAVEAT
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Perldoc::ToTk - let Perldoc use Tk::Pod to render Pod
SYNOPSIS
DESCRIPTION
SEE ALSO
AUTHOR
Pod::Perldoc::ToXml - let Perldoc render Pod as XML
SYNOPSIS
DESCRIPTION
SEE ALSO
COPYRIGHT AND DISCLAIMERS
AUTHOR
Pod::Simple - framework for parsing Pod
- SYNOPSIS
- DESCRIPTION
- MAIN METHODS
$parser = SomeClass->new();
,$parser->output_fh( *OUT );
,$parser->output_string( \$somestring );
,$parser->parse_file( $some_filename );
,$parser->parse_file( *INPUT_FH );
,$parser->parse_string_document( $all_content );
,$parser->parse_lines( ...@lines..., undef );
,$parser->content_seen
,SomeClass->filter( $filename );
,SomeClass->filter( *INPUT_FH );
,SomeClass->filter( \$document_content );
- SECONDARY METHODS
$parser->parse_characters( SOMEVALUE )
,$parser->no_whining( SOMEVALUE )
,$parser->no_errata_section( SOMEVALUE )
,$parser->complain_stderr( SOMEVALUE )
,$parser->source_filename
,$parser->doc_has_started
,$parser->source_dead
,$parser->strip_verbatim_indent( SOMEVALUE )
,$parser->expand_verbatim_tabs( n )
- TERTIARY METHODS
$parser->abandon_output_fh()
,$parser->abandon_output_string()
,$parser->accept_code( @codes )
,$parser->accept_codes( @codes )
,$parser->accept_directive_as_data( @directives )
,$parser->accept_directive_as_processed( @directives )
,$parser->accept_directive_as_verbatim( @directives )
,$parser->accept_target( @targets )
,$parser->accept_target_as_text( @targets )
,$parser->accept_targets( @targets )
,$parser->accept_targets_as_text( @targets )
,$parser->any_errata_seen()
,$parser->errata_seen()
,$parser->detected_encoding()
,$parser->encoding()
,$parser->parse_from_file( $source, $to )
,$parser->scream( @error_messages )
,$parser->unaccept_code( @codes )
,$parser->unaccept_codes( @codes )
,$parser->unaccept_directive( @directives )
,$parser->unaccept_directives( @directives )
,$parser->unaccept_target( @targets )
,$parser->unaccept_targets( @targets )
,$parser->version_report()
,$parser->whine( @error_messages )
- ENCODING
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
, Karl Williamsonkhw@cpan.org
, Gabor Szaboszabgab@gmail.com
, Shawn H CoreySHCOREY at cpan.org
Pod::Simple::Checker -- check the Pod syntax of a document
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::Debug -- put Pod::Simple into trace/debug mode
- SYNOPSIS
- DESCRIPTION
- CAVEATS
- GUTS
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::DumpAsText -- dump Pod-parsing events as text
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::DumpAsXML -- turn Pod into XML
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::HTML - convert Pod to HTML
- SYNOPSIS
- DESCRIPTION
- CALLING FROM THE COMMAND LINE
- CALLING FROM PERL
Minimal code
More detailed example
- METHODS
html_css
html_javascript
title_prefix
title_postfix
html_header_before_title
top_anchor
html_h_level
index
html_header_after_title
html_footer
- SUBCLASSING
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- ACKNOWLEDGEMENTS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::HTMLBatch - convert several Pod files to several HTML files
- SYNOPSIS
- DESCRIPTION
FROM THE COMMAND LINE
- MAIN METHODS
$batchconv
= Pod::Simple::HTMLBatch->new;,$batchconv
->batch_convert( indirs, outdir );,$batchconv
->batch_convert( undef , ...);,$batchconv
->batch_convert( q{@INC}, ...);,$batchconv
->batch_convert( \@dirs , ...);,$batchconv
->batch_convert( "somedir" , ...);,$batchconv
->batch_convert( 'somedir:someother:also' , ...);,$batchconv
->batch_convert( ... , undef );,$batchconv
->batch_convert( ... , 'somedir' );- ACCESSOR METHODS
$batchconv
->verbose( nonnegative_integer );,$batchconv
->index( true-or-false );,$batchconv
->contents_file( filename );,$batchconv
->contents_page_start( HTML_string );,$batchconv
->contents_page_end( HTML_string );,$batchconv
->add_css($url
);,$batchconv
->add_javascript($url
);,$batchconv
->css_flurry( true-or-false );,$batchconv
->javascript_flurry( true-or-false );,$batchconv
->no_contents_links( true-or-false );,$batchconv
->html_render_class( classname );,$batchconv
->search_class( classname );
- NOTES ON CUSTOMIZATION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::JustPod -- just the Pod, the whole Pod, and nothing but the Pod
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::LinkSection -- represent “section” attributes of L codes
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::Methody -- turn Pod::Simple events into method calls
- SYNOPSIS
- DESCRIPTION
- METHOD CALLING
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::PullParser -- a pull-parser interface to parsing Pod
- SYNOPSIS
- DESCRIPTION
- METHODS
my
$token
=$parser
->get_token,$parser
->unget_token($token
),$parser
->unget_token($token1
,$token2
, ... ),$parser
->set_source($filename
),$parser
->set_source($filehandle_object
),$parser
->set_source( \$document_source ),$parser
->set_source( \@document_lines ),$parser
->parse_file(...),$parser
->parse_string_document(...),$parser
->filter(...),$parser
->parse_from_file(...), my$title_string
=$parser
->get_title, my$title_string
=$parser
->get_short_title,$author_name
=$parser
->get_author,$description_name
=$parser
->get_description,$version_block
=$parser
->get_version- NOTE
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::PullParserEndToken -- end-tokens from Pod::Simple::PullParser
- SYNOPSIS
- DESCRIPTION
$token
->tagname,$token
->tagname(somestring),$token
->tag(...),$token
->is_tag(somestring) or$token
->is_tagname(somestring)- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::PullParserStartToken -- start-tokens from Pod::Simple::PullParser
- SYNOPSIS
- DESCRIPTION
$token
->tagname,$token
->tagname(somestring),$token
->tag(...),$token
->is_tag(somestring) or$token
->is_tagname(somestring),$token
->attr(attrname),$token
->attr(attrname, newvalue),$token
->attr_hash- SEE ALSO
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::PullParserTextToken -- text-tokens from Pod::Simple::PullParser
- SYNOPSIS
- DESCRIPTION
$token
->text,$token
->text(somestring),$token
->text_r()- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::PullParserToken -- tokens from Pod::Simple::PullParser
- SYNOPSIS
- DESCRIPTION
$token
->type,$token
->is_start,$token
->is_text,$token
->is_end,$token
->dump- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::RTF -- format Pod as RTF
- SYNOPSIS
- DESCRIPTION
- FORMAT CONTROL ATTRIBUTES
$parser
->head1_halfpoint_size( halfpoint_integer );,$parser
->head2_halfpoint_size( halfpoint_integer );,$parser
->head3_halfpoint_size( halfpoint_integer );,$parser
->head4_halfpoint_size( halfpoint_integer );,$parser
->codeblock_halfpoint_size( halfpoint_integer );,$parser
->header_halfpoint_size( halfpoint_integer );,$parser
->normal_halfpoint_size( halfpoint_integer );,$parser
->no_proofing_exemptions( true_or_false );,$parser
->doc_lang( microsoft_decimal_language_code )- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::Search - find POD documents in directory trees
- SYNOPSIS
- DESCRIPTION
- CONSTRUCTOR
- ACCESSORS
$search
->inc( true-or-false );,$search
->verbose( nonnegative-number );,$search
->limit_glob( some-glob-string );,$search
->callback( \&some_routine );,$search
->laborious( true-or-false );,$search
->recurse( true-or-false );,$search
->shadows( true-or-false );,$search
->is_case_insensitive( true-or-false );,$search
->limit_re( some-regxp );,$search
->dir_prefix( some-string-value );,$search
->progress( some-progress-object );,$name2path
=$self
->name2path;,$path2name
=$self
->path2name;- MAIN SEARCH METHODS
- $search->survey( @directories )
name2path
,path2name
$search->simplify_name( $str )
$search->find( $pod )
$search->find( $pod, @search_dirs )
$self->contains_pod( $file )
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::SimpleTree -- parse Pod into a simple parse tree
- SYNOPSIS
- DESCRIPTION
- METHODS
- Tree Contents
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::Subclassing -- write a formatter as a Pod::Simple subclass
- SYNOPSIS
- DESCRIPTION
Pod::Simple, Pod::Simple::Methody, Pod::Simple::PullParser, Pod::Simple::SimpleTree
- Events
$parser->_handle_element_start( element_name, attr_hashref )
,$parser->_handle_element_end( element_name )
,$parser->_handle_text( text_string )
, 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- More Pod::Simple Methods
$parser->accept_targets( SOMEVALUE )
,$parser->accept_targets_as_text( SOMEVALUE )
,$parser->accept_codes( Codename, Codename... )
,$parser->accept_directive_as_data( directive_name )
,$parser->accept_directive_as_verbatim( directive_name )
,$parser->accept_directive_as_processed( directive_name )
,$parser->nbsp_for_S( BOOLEAN );
,$parser->version_report()
,$parser->pod_para_count()
,$parser->line_count()
,$parser->nix_X_codes( SOMEVALUE )
,$parser->keep_encoding_directive( SOMEVALUE )
,$parser->merge_text( SOMEVALUE )
,$parser->code_handler( CODE_REF )
,$parser->cut_handler( CODE_REF )
,$parser->pod_handler( CODE_REF )
,$parser->whiteline_handler( CODE_REF )
,$parser->whine( linenumber, complaint string )
,$parser->scream( linenumber, complaint string )
,$parser->source_dead(1)
,$parser->hide_line_numbers( SOMEVALUE )
,$parser->no_whining( SOMEVALUE )
,$parser->no_errata_section( SOMEVALUE )
,$parser->complain_stderr( SOMEVALUE )
,$parser->bare_output( SOMEVALUE )
,$parser->preserve_whitespace( SOMEVALUE )
,$parser->parse_empty_lists( SOMEVALUE )
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::Text -- format Pod as plaintext
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::TextContent -- get the text content of Pod
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::XHTML -- format Pod as validating XHTML
- SYNOPSIS
- DESCRIPTION
Minimal code
- METHODS
perldoc_url_prefix
perldoc_url_postfix
man_url_prefix
man_url_postfix
title_prefix, title_postfix
html_css
html_javascript
html_doctype
html_charset
html_header_tags
html_h_level
default_title
force_title
html_header, html_footer
index
anchor_items
backlink
- SUBCLASSING
- handle_text
- handle_code
- accept_targets_as_html
- resolve_pod_page_link
- resolve_man_page_link
- idify
- batch_mode_page_object_init
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- ACKNOWLEDGEMENTS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Simple::XMLOutStream -- turn Pod into XML
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- ABOUT EXTENDING POD
- SEE ALSO
- SUPPORT
- COPYRIGHT AND DISCLAIMERS
- AUTHOR
Allison Randal
allison@perl.org
, Hans Dieter Pearceyhdp@cpan.org
, David E. Wheelerdwheeler@cpan.org
Pod::Text - Convert POD data to formatted text
- SYNOPSIS
- DESCRIPTION
Encoding
- CLASS METHODS
new(ARGS), alt, code, encoding, errors, guesswork, quoting, indent, loose, margin, nourls, quotes, sentence, stderr, utf8, width
- 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)
- FUNCTIONS
pod2text([[-a,] [-NNN,]] INPUT[, OUTPUT])
- DIAGNOSTICS
Bizarre space in item, Item called without tag, Can't open
%s
for reading:%s
, Invalid errors setting "%s", Invalid quote specification "%s", POD document had syntax errors
COMPATIBILITY
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::Text::Color - Convert POD data to formatted color ASCII text
SYNOPSIS
DESCRIPTION
COMPATIBILITY
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::Text::Overstrike - Convert POD data to formatted overstrike text
SYNOPSIS
DESCRIPTION
BUGS
COMPATIBILITY
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::Text::Termcap - Convert POD data to ASCII text with format escapes
SYNOPSIS
DESCRIPTION
COMPATIBILITY
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
Pod::Usage - extracts POD documentation and shows usage information
- SYNOPSIS
- ARGUMENTS
-message
string,-msg
string,-exitval
value,-verbose
value,-sections
spec,-output
handle,-input
handle,-pathlist
string,-noperldoc
,-perlcmd
,-perldoc
path-to-perldoc,-perldocopt
stringFormatting base class
Pass-through options
- DESCRIPTION
Scripts
- EXAMPLES
Recommended Use
CAVEATS
SUPPORT
AUTHOR
LICENSE
ACKNOWLEDGMENTS
SEE ALSO
SDBM_File - Tied access to sdbm files
- SYNOPSIS
- DESCRIPTION
Tie
- EXPORTS
- DIAGNOSTICS
sdbm store returned -1, errno 22, key "..." at ...
SECURITY WARNING
BUGS AND WARNINGS
Safe - Compile and execute code in restricted compartments
- SYNOPSIS
- DESCRIPTION
a new namespace, an operator mask
- WARNING
- METHODS
permit (OP, ...)
permit_only (OP, ...)
deny (OP, ...)
deny_only (OP, ...)
trap (OP, ...), untrap (OP, ...)
share (NAME, ...)
share_from (PACKAGE, ARRAYREF)
varglob (VARNAME)
reval (STRING, STRICT)
rdo (FILENAME)
root (NAMESPACE)
mask (MASK)
wrap_code_ref (CODEREF)
wrap_code_refs_within (...)
- RISKS
Memory, CPU, Snooping, Signals, State Changes
AUTHOR
Scalar::Util - A selection of general-utility scalar subroutines
- SYNOPSIS
- DESCRIPTION
Core Perl
builtin
Functions- FUNCTIONS FOR REFERENCES
blessed
refaddr
reftype
weaken
unweaken
isweak
- OTHER FUNCTIONS
dualvar
isdual
isvstring
looks_like_number
openhandle
readonly
set_prototype
tainted
- DIAGNOSTICS
Vstrings are not implemented in this version of perl
KNOWN BUGS
SEE ALSO
COPYRIGHT
Search::Dict - look - search for key in dictionary file
SYNOPSIS
DESCRIPTION
SelectSaver - save and restore selected file handle
SYNOPSIS
DESCRIPTION
SelfLoader - load functions only on demand
- SYNOPSIS
- DESCRIPTION
The __DATA__ token
SelfLoader autoloading
Autoloading and package lexicals
SelfLoader and AutoLoader
__DATA__, __END__, and the FOOBAR::DATA filehandle
Classes and inherited methods
- Multiple packages and fully qualified subroutine names
- AUTHOR
- COPYRIGHT AND LICENSE
a), b)
Socket, Socket - networking constants and support functions
- SYNOPSIS
- DESCRIPTION
- CONSTANTS
- PF_INET, PF_INET6, PF_UNIX, ...
- AF_INET, AF_INET6, AF_UNIX, ...
- SOCK_STREAM, SOCK_DGRAM, SOCK_RAW, ...
- SOCK_NONBLOCK. SOCK_CLOEXEC
- SOL_SOCKET
- SO_ACCEPTCONN, SO_BROADCAST, SO_ERROR, ...
- IP_OPTIONS, IP_TOS, IP_TTL, ...
- IP_PMTUDISC_WANT, IP_PMTUDISC_DONT, ...
- IPTOS_LOWDELAY, IPTOS_THROUGHPUT, IPTOS_RELIABILITY, ...
- MSG_BCAST, MSG_OOB, MSG_TRUNC, ...
- SHUT_RD, SHUT_RDWR, SHUT_WR
- INADDR_ANY, INADDR_BROADCAST, INADDR_LOOPBACK, INADDR_NONE
- IPPROTO_IP, IPPROTO_IPV6, IPPROTO_TCP, ...
- TCP_CORK, TCP_KEEPALIVE, TCP_NODELAY, ...
- IN6ADDR_ANY, IN6ADDR_LOOPBACK
- IPV6_ADD_MEMBERSHIP, IPV6_MTU, IPV6_V6ONLY, ...
- STRUCTURE MANIPULATORS
- $family = sockaddr_family $sockaddr
- $sockaddr = pack_sockaddr_in $port, $ip_address
- ($port, $ip_address) = unpack_sockaddr_in $sockaddr
- $sockaddr = sockaddr_in $port, $ip_address
- ($port, $ip_address) = sockaddr_in $sockaddr
- $sockaddr = pack_sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]
- ($port, $ip6_address, $scope_id, $flowinfo) = unpack_sockaddr_in6 $sockaddr
- $sockaddr = sockaddr_in6 $port, $ip6_address, [$scope_id, [$flowinfo]]
- ($port, $ip6_address, $scope_id, $flowinfo) = sockaddr_in6 $sockaddr
- $sockaddr = pack_sockaddr_un $path
- ($path) = unpack_sockaddr_un $sockaddr
- $sockaddr = sockaddr_un $path
- ($path) = sockaddr_un $sockaddr
- $ip_mreq = pack_ip_mreq $multiaddr, $interface
- ($multiaddr, $interface) = unpack_ip_mreq $ip_mreq
- $ip_mreq_source = pack_ip_mreq_source $multiaddr, $source, $interface
- ($multiaddr, $source, $interface) = unpack_ip_mreq_source $ip_mreq
- $ipv6_mreq = pack_ipv6_mreq $multiaddr6, $ifindex
- ($multiaddr6, $ifindex) = unpack_ipv6_mreq $ipv6_mreq
- FUNCTIONS
- $ip_address = inet_aton $string
- $string = inet_ntoa $ip_address
- $address = inet_pton $family, $string
- $string = inet_ntop $family, $address
- ($err, @result) = getaddrinfo $host, $service, [$hints]
flags => INT, family => INT, socktype => INT, protocol => INT, family => INT, socktype => INT, protocol => INT, addr => STRING, canonname => STRING, AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST
- ($err, $hostname, $servicename) = getnameinfo $sockaddr, [$flags, [$xflags]]
NI_NUMERICHOST, NI_NUMERICSERV, NI_NAMEREQD, NI_DGRAM, NIx_NOHOST, NIx_NOSERV
- getaddrinfo() / getnameinfo() ERROR CONSTANTS
EAI_AGAIN, EAI_BADFLAGS, EAI_FAMILY, EAI_NODATA, EAI_NONAME, EAI_SERVICE
- EXAMPLES
Lookup for connect()
Making a human-readable string out of an address
Resolving hostnames into IP addresses
Accessing socket options
AUTHOR
Storable - persistence for Perl data structures
- SYNOPSIS
- DESCRIPTION
- MEMORY STORE
- ADVISORY LOCKING
- SPEED
- CANONICAL REPRESENTATION
- CODE REFERENCES
- FORWARD COMPATIBILITY
utf8 data, restricted hashes, huge objects, files from future versions of Storable
- ERROR REPORTING
- WIZARDS ONLY
- Hooks
STORABLE_freeze
obj, cloning,STORABLE_thaw
obj, cloning, serialized, ..,STORABLE_attach
class, cloning, serialized- Predicates
Storable::last_op_in_netorder
,Storable::is_storing
,Storable::is_retrieving
Recursion
Deep Cloning
- Storable magic
$info
= Storable::file_magic($filename
),version
,version_nv
,major
,minor
,hdrsize
,netorder
,byteorder
,intsize
,longsize
,ptrsize
,nvsize
,file
,$info
= Storable::read_magic($buffer
),$info
= Storable::read_magic($buffer
,$must_be_file
)- EXAMPLES
- SECURITY WARNING
- WARNING
- REGULAR EXPRESSIONS
- BUGS
64 bit data in perl 5.6.0 and 5.6.1
CREDITS
AUTHOR
SEE ALSO
Sub::Util - A selection of utility subroutines for subs and CODE references
SYNOPSIS
DESCRIPTION
FUNCTIONS
prototype
set_prototype
subname
set_subname
AUTHOR
Symbol - manipulate Perl symbols and their names
SYNOPSIS
DESCRIPTION
BUGS
Sys::Hostname - Try every conceivable way to get hostname
SYNOPSIS
DESCRIPTION
AUTHOR
Sys::Syslog - Perl interface to the UNIX syslog(3) calls
- VERSION
- SYNOPSIS
- DESCRIPTION
- EXPORTS
- FUNCTIONS
openlog($ident,
$logopt
,$facility
), syslog($priority,$message
), syslog($priority,$format
,@args
), Note, setlogmask($mask_priority), setlogsock(), Note, closelog()- THE RULES OF SYS::SYSLOG
- EXAMPLES
- CONSTANTS
Facilities
Levels
- DIAGNOSTICS
Invalid argument passed to setlogsock
,eventlog passed to setlogsock, but no Win32 API available
,no connection to syslog available
,stream passed to setlogsock, but %s is not writable
,stream passed to setlogsock, but could not find any device
,tcp passed to setlogsock, but tcp service unavailable
,syslog: expecting argument %s
,syslog: invalid level/facility: %s
,syslog: too many levels given: %s
,syslog: too many facilities given: %s
,syslog: level must be given
,udp passed to setlogsock, but udp service unavailable
,unix passed to setlogsock, but path not available
- HISTORY
- SEE ALSO
Other modules
Manual Pages
RFCs
Articles
Event Log
- AUTHORS & ACKNOWLEDGEMENTS
- BUGS
- SUPPORT
Perl Documentation, MetaCPAN, Search CPAN, AnnoCPAN: Annotated CPAN documentation, CPAN Ratings, RT: CPAN's request tracker
COPYRIGHT
LICENSE
TAP::Base - Base class that provides common functionality to TAP::Parser and TAP::Harness
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
TAP::Formatter::Base - Base class for harness output delegates
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
- Class Methods
verbosity
,verbose
,timer
,failures
,comments
,quiet
,really_quiet
,silent
,errors
,directives
,stdout
,color
,jobs
,show_count
TAP::Formatter::Color - Run Perl test scripts with color
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
Class Methods
TAP::Formatter::Console - Harness output delegate for default console output
- VERSION
- DESCRIPTION
- SYNOPSIS
open_test
TAP::Formatter::Console::ParallelSession - Harness output delegate for parallel console output
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
Class Methods
TAP::Formatter::Console::Session - Harness output delegate for default console output
VERSION
DESCRIPTION
clear_for_close
close_test
header
result
TAP::Formatter::File - Harness output delegate for file output
- VERSION
- DESCRIPTION
- SYNOPSIS
open_test
TAP::Formatter::File::Session - Harness output delegate for file output
- VERSION
- DESCRIPTION
- METHODS
result
close_test
TAP::Formatter::Session - Abstract base class for harness output delegate
- VERSION
- METHODS
- Class Methods
formatter
,parser
,name
,show_count
TAP::Harness - Run test scripts with statistics
- VERSION
- DESCRIPTION
- SYNOPSIS
- METHODS
- Class Methods
verbosity
,timer
,failures
,comments
,show_count
,normalize
,lib
,switches
,test_args
,color
,exec
,merge
,sources
,aggregator_class
,version
,formatter_class
,multiplexer_class
,parser_class
,scheduler_class
,formatter
,errors
,directives
,ignore_exit
,jobs
,rules
,rulesfiles
,stdout
,trap
Instance Methods
the source name of a test to run, a reference to a [ source name, display name ] array
- CONFIGURING
Plugins
Module::Build
ExtUtils::MakeMaker
prove
- WRITING PLUGINS
Customize how TAP gets into the parser, Customize how TAP results are output from the parser
- SUBCLASSING
- Methods
"new" in TAP::Harness, "runtests" in TAP::Harness, "summary" in TAP::Harness
REPLACING
SEE ALSO
TAP::Harness::Beyond, Test::Harness::Beyond - Beyond make test
- Beyond make test
Saved State
Parallel Testing
Non-Perl Tests
Mixing it up
Rolling My Own
Deeper Customisation
Callbacks
Parsing TAP
Getting Support
TAP::Object - Base class that provides common functionality to all TAP::* modules
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
TAP::Parser - Parse TAP output
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
- Class Methods
source
,tap
,exec
,sources
,callback
,switches
,test_args
,spool
,merge
,grammar_class
,result_factory_class
,iterator_factory_class
- Instance Methods
- INDIVIDUAL RESULTS
- Result types
Version, Plan, Pragma, Test, Comment, Bailout, Unknown
Common type methods
plan
methodspragma
methodscomment
methodsbailout
methodsunknown
methodstest
methods- TOTAL RESULTS
Individual Results
Pragmas
Summary Results
ignore_exit
Misplaced plan, No plan, More than one plan, Test numbers out of sequence
- CALLBACKS
test
,version
,plan
,comment
,bailout
,yaml
,unknown
,ELSE
,ALL
,EOF
- TAP GRAMMAR
- BACKWARDS COMPATIBILITY
- Differences
TODO plans, 'Missing' tests
- SUBCLASSING
- Parser Components
option 1, option 2
- 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ä
AUTHORS
BUGS
COPYRIGHT & LICENSE
TAP::Parser::Aggregator - Aggregate TAP::Parser results
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
- Instance Methods
- Summary methods
failed, parse_errors, passed, planned, skipped, todo, todo_passed, wait, exit
Failed tests, Parse errors, Bad exit or wait status
See Also
TAP::Parser::Grammar - A grammar for the Test Anything Protocol.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
TAP GRAMMAR
SUBCLASSING
SEE ALSO
TAP::Parser::Iterator - Base class for TAP source iterators
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
- SUBCLASSING
Example
SEE ALSO
TAP::Parser::Iterator::Array - Iterator for array-based TAP sources
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
ATTRIBUTION
SEE ALSO
TAP::Parser::Iterator::Process - Iterator for process-based TAP sources
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
ATTRIBUTION
SEE ALSO
TAP::Parser::Iterator::Stream - Iterator for filehandle-based TAP sources
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
ATTRIBUTION
SEE ALSO
TAP::Parser::IteratorFactory - Figures out which SourceHandler objects to use for a given Source
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
- Instance Methods
- SUBCLASSING
Example
AUTHORS
ATTRIBUTION
SEE ALSO
TAP::Parser::Multiplexer - Multiplex multiple TAP::Parsers
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
See Also
TAP::Parser::Result - Base class for TAP::Parser output objects
- VERSION
- SYNOPSIS
DESCRIPTION
METHODS
- Boolean methods
is_plan
,is_pragma
,is_test
,is_comment
,is_bailout
,is_version
,is_unknown
,is_yaml
- SUBCLASSING
Example
SEE ALSO
TAP::Parser::Result::Bailout - Bailout result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
Instance Methods
TAP::Parser::Result::Comment - Comment result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
Instance Methods
TAP::Parser::Result::Plan - Plan result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
,raw
Instance Methods
TAP::Parser::Result::Pragma - TAP pragma token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
,raw
Instance Methods
TAP::Parser::Result::Test - Test result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
Instance Methods
TAP::Parser::Result::Unknown - Unknown result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
,raw
TAP::Parser::Result::Version - TAP syntax version token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
,raw
Instance Methods
TAP::Parser::Result::YAML - YAML result token.
- VERSION
- DESCRIPTION
- OVERRIDDEN METHODS
as_string
,raw
Instance Methods
TAP::Parser::ResultFactory - Factory for creating TAP::Parser output objects
- SYNOPSIS
- VERSION
- DESCRIPTION
- METHODS
- Class Methods
- SUBCLASSING
Example
SEE ALSO
TAP::Parser::Scheduler - Schedule tests during parallel testing
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
- Class Methods
- Rules data structure
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
jobs
in your Harness object
Instance Methods
TAP::Parser::Scheduler::Job - A single testing job.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
Attributes
TAP::Parser::Scheduler::Spinner - A no-op job.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
SEE ALSO
TAP::Parser::Source - a TAP source & meta data about it
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
AUTHORS
SEE ALSO
TAP::Parser::SourceHandler - Base class for different TAP source handlers
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
- SUBCLASSING
Example
AUTHORS
SEE ALSO
TAP::Parser::SourceHandler::Executable - Stream output from an executable TAP source
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
- SUBCLASSING
Example
SEE ALSO
TAP::Parser::SourceHandler::File - Stream TAP from a text file.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
CONFIGURATION
SUBCLASSING
SEE ALSO
TAP::Parser::SourceHandler::Handle - Stream TAP from an IO::Handle or a GLOB.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
SUBCLASSING
SEE ALSO
TAP::Parser::SourceHandler::Perl - Stream TAP from a Perl executable
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
- SUBCLASSING
Example
SEE ALSO
TAP::Parser::SourceHandler::RawTAP - Stream output from raw TAP in a scalar/array ref.
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
SUBCLASSING
SEE ALSO
TAP::Parser::YAMLish::Reader - Read YAMLish data from iterator
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
Class Methods
Instance Methods
AUTHOR
SEE ALSO
COPYRIGHT
TAP::Parser::YAMLish::Writer - Write YAMLish data
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
- Class Methods
- Instance Methods
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
AUTHOR
SEE ALSO
COPYRIGHT
Term::ANSIColor - Color screen output using ANSI escape sequences
- SYNOPSIS
- DESCRIPTION
- Supported Colors
- Function Interface
color(ATTR[, ATTR ...]), colored(STRING, ATTR[, ATTR ...]), colored(ATTR-REF, STRING[, STRING...]), uncolor(ESCAPE), colorstrip(STRING[, STRING ...]), colorvalid(ATTR[, ATTR ...]), coloralias(ALIAS[, ATTR ...])
Constant Interface
The Color Stack
Supporting CLICOLOR
- DIAGNOSTICS
Bad color mapping
%s
, Bad escape sequence%s
, Bareword "%s" not allowed while "strict subs" in use, Cannot alias standard color%s
, Cannot alias standard color%s
in%s
, Invalid alias name%s
, Invalid alias name%s
in%s
, Invalid attribute name%s
, Invalid attribute name%s
in%s
, Name "%s" used only once: possible typo, No comma allowed after filehandle, No name for escape sequence%s
- ENVIRONMENT
ANSI_COLORS_ALIASES, ANSI_COLORS_DISABLED, NO_COLOR
COMPATIBILITY
RESTRICTIONS
NOTES
AUTHORS
COPYRIGHT AND LICENSE
SEE ALSO
Term::Cap - Perl termcap interface
- SYNOPSIS
- DESCRIPTION
METHODS
Tgetent, OSPEED, TERM
Tpad, $string
, $cnt
, $FH
Tputs, $cap
, $cnt
, $FH
Tgoto, $cap
, $col
, $row
, $FH
Trequire
EXAMPLES
COPYRIGHT AND LICENSE
AUTHOR
SEE ALSO
Term::Complete - Perl word completion module
- SYNOPSIS
- DESCRIPTION
<tab>, ^D, ^U, <del>, <bs>
DIAGNOSTICS
BUGS
AUTHOR
Term::ReadLine - Perl interface to various readline packages. If no real package is found, substitutes stubs instead of basic functions.
- SYNOPSIS
- DESCRIPTION
- Minimal set of supported functions
ReadLine
,new
,readline
,addhistory
,IN
,OUT
,MinLine
,findConsole
, Attribs,Features
- Additional supported functions
tkRunning
,event_loop
,ornaments
,newTTY
EXPORTS
ENVIRONMENT
Term::Table - Format a header and rows into a table
- DESCRIPTION
- SYNOPSIS
- INTERFACE
- OPTIONS
header => [ ... ], rows => [ [...], [...], ... ], collapse =>
$bool
, max_width =>$num
, pad =>$num
, allow_overflow =>$bool
, sanitize =>$bool
, mark_tail =>$bool
, show_header =>$bool
, auto_columns =>$bool
, no_collapse => [$col_num_a
,$col_num_b
, ... ], no_collapse => [$col_name_a
,$col_name_b
, ... ], no_collapse => {$col_num_a
=> 1,$col_num_b
=> 1, ... }, no_collapse => {$col_name_a
=> 1,$col_name_b
=> 1, ... }
- NOTE ON UNICODE/WIDE CHARACTERS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Term::Table::Cell - Representation of a cell in a table.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Term::Table::CellStack - Combine several cells into one (vertical)
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Term::Table::HashBase - Build hash based classes.
- SYNOPSIS
- DESCRIPTION
- THIS IS A BUNDLED COPY OF HASHBASE
- METHODS
- PROVIDED BY HASH BASE
$it
=$class
->new(%PAIRS),$it
=$class
->new(\%PAIRS),$it
=$class
->new(\@ORDERED_VALUES)- HOOKS
$self
->init()
- ACCESSORS
- READ/WRITE
foo(), set_foo(), FOO()
- READ ONLY
set_foo()
- DEPRECATED SETTER
set_foo()
NO SETTER
NO READER
CONSTANT ONLY
- SUBCLASSING
- GETTING A LIST OF ATTRIBUTES FOR A CLASS
@list
= Term::Table::HashBase::attr_list($class),@list
=$class
->Term::Table::HashBase::attr_list()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Term::Table::LineBreak - Break up lines for use in tables.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Term::Table::Util - Utilities for Term::Table.
- DESCRIPTION
- EXPORTS
- CONSTANTS
$bool
= USE_GCS,$bool
= USE_TERM_READKEY- UTILITIES
$width
= term_size(),$width
= uni_length($string)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test - provides a simple framework for writing test scripts
- SYNOPSIS
- DESCRIPTION
- QUICK START GUIDE
- Functions
plan(...)
,tests => number
,todo => [1,5,14]
,onfail => sub { ... }
,onfail => \&some_sub
_to_value
ok(...)
skip(skip_if_true, args...)
- TEST TYPES
NORMAL TESTS, SKIPPED TESTS, TODO TESTS
ONFAIL
BUGS and CAVEATS
ENVIRONMENT
NOTE
SEE ALSO
AUTHOR
Test2 - Framework for writing test tools that all work together.
- DESCRIPTION
- WHAT IS NEW?
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
GETTING STARTED
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.
- Test2::Tools::
- Test2::Plugin::
- Test2::Bundle::
- Test2::Require::
- Test2::Formatter::
- Test2::Event::
- Test2::Hub::
- Test2::IPC::
- Test2::Util::
- Test2::API::
- Test2::
- SEE ALSO
- CONTACTING US
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API - Primary interface for writing Test2 based testing tools.
- ***INTERNALS NOTE***
- DESCRIPTION
- SYNOPSIS
WRITING A TOOL
TESTING YOUR TOOLS
OTHER API FUNCTIONS
- MAIN API EXPORTS
- context(...)
$ctx
= context(),$ctx
= context(%params), level =>$int
, wrapped =>$int
, stack =>$stack
, hub =>$hub
, on_init => sub { ... }, on_release => sub { ... }- release($;$)
release
$ctx
;, release$ctx
, ...;- context_do(&;@)
- no_context(&;$)
no_context { ... };, no_context { ... }
$hid
;- intercept(&)
- run_subtest(...)
$NAME
, \&CODE,$BUFFERED
or \%PARAMS, 'buffered' =>$bool
, 'inherit_trace' =>$bool
, 'no_fork' =>$bool
,@ARGS
, Things not affected by this flag, Things that are affected by this flag, Things that are formatter dependent
- OTHER API EXPORTS
- STATUS AND INITIALIZATION STATE
$bool
= test2_init_done(),$bool
= test2_load_done(), test2_set_is_end(), test2_set_is_end($bool),$bool
= test2_get_is_end(),$stack
= test2_stack(),$bool
= test2_is_testing_done(), test2_ipc_disable,$bool
= test2_ipc_disabled, test2_ipc_wait_enable(), test2_ipc_wait_disable(),$bool
= test2_ipc_wait_enabled(),$bool
= test2_no_wait(), test2_no_wait($bool),$fh
= test2_stdout(),$fh
= test2_stderr(), test2_reset_io()- 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 { ... }),
@list
= test2_list_context_acquire_callbacks(),@list
= test2_list_context_init_callbacks(),@list
= test2_list_context_release_callbacks(),@list
= test2_list_exit_callbacks(),@list
= test2_list_post_load_callbacks(),@list
= test2_list_pre_subtest_callbacks(), test2_add_uuid_via(sub { ... }),$sub
= test2_add_uuid_via()- IPC AND CONCURRENCY
$bool
= test2_has_ipc(),$ipc
= test2_ipc(), test2_ipc_add_driver($DRIVER),@drivers
= test2_ipc_drivers(),$bool
= test2_ipc_polling(), test2_ipc_enable_polling(), test2_ipc_disable_polling(), test2_ipc_enable_shm(), test2_ipc_set_pending($uniq_val),$pending
= test2_ipc_get_pending(),$timeout
= test2_ipc_get_timeout(), test2_ipc_set_timeout($timeout)- MANAGING FORMATTERS
$formatter
= test2_formatter, test2_formatter_set($class_or_instance),@formatters
= test2_formatters(), test2_formatter_add($class_or_instance)- TIME STAMPS
test2_enable_trace_stamps(), test2_disable_trace_stamps(),
$bool
= test2_trace_stamps_enabled()
- OTHER EXAMPLES
- SEE ALSO
- MAGIC
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::Breakage - What breaks at what version
- DESCRIPTION
- FUNCTIONS
%mod_ver
= upgrade_suggested(),%mod_ver
= Test2::API::Breakage->upgrade_suggested(),%mod_ver
= upgrade_required(),%mod_ver
= Test2::API::Breakage->upgrade_required(),%mod_ver
= known_broken(),%mod_ver
= Test2::API::Breakage->known_broken()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::Context - Object to represent a testing context.
- DESCRIPTION
- SYNOPSIS
- CRITICAL DETAILS
you MUST always use the context() 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
- METHODS
$ctx
->done_testing;,$clone
=$ctx
->snapshot(),$ctx
->release(),$ctx
->throw($message),$ctx
->alert($message),$stack
=$ctx
->stack(),$hub
=$ctx
->hub(),$dbg
=$ctx
->trace(),$ctx
->do_in_context(\&code,@args
);,$ctx
->restore_error_vars(), $! =$ctx
->errno(), $? =$ctx
->child_error(), $@ =$ctx
->eval_error()- EVENT PRODUCTION METHODS
$event
=$ctx
->pass(),$event
=$ctx
->pass($name),$true
=$ctx
->pass_and_release(),$true
=$ctx
->pass_and_release($name), my$event
=$ctx
->fail(), my$event
=$ctx
->fail($name), my$event
=$ctx
->fail($name,@diagnostics
), my$false
=$ctx
->fail_and_release(), my$false
=$ctx
->fail_and_release($name), my$false
=$ctx
->fail_and_release($name,@diagnostics
),$event
=$ctx
->ok($bool,$name
),$event
=$ctx
->ok($bool,$name
, \@on_fail),$event
=$ctx
->note($message),$event
=$ctx
->diag($message),$event
=$ctx
->plan($max),$event
=$ctx
->plan(0, 'SKIP',$reason
),$event
=$ctx
->skip($name,$reason
);,$event
=$ctx
->bail($reason),$event
=$ctx
->send_ev2(%facets),$event
=$ctx
->build_e2(%facets),$event
=$ctx
->send_ev2_and_release($Type,%parameters
),$event
=$ctx
->send_event($Type,%parameters
),$event
=$ctx
->build_event($Type,%parameters
),$event
=$ctx
->send_event_and_release($Type,%parameters
)
- HOOKS
INIT HOOKS
RELEASE HOOKS
- THIRD PARTY META-DATA
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Kent Fredric <kentnl@cpan.org>
COPYRIGHT
Test2::API::Instance - Object used by Test2::API under the hood
- DESCRIPTION
- SYNOPSIS
$pid
=$obj
->pid,$obj
->tid,$obj
->reset(),$obj
->load(),$bool
=$obj
->loaded,$arrayref
=$obj
->post_load_callbacks,$obj
->add_post_load_callback(sub { ... }),$hashref
=$obj
->contexts(),$arrayref
=$obj
->context_acquire_callbacks,$arrayref
=$obj
->context_init_callbacks,$arrayref
=$obj
->context_release_callbacks,$arrayref
=$obj
->pre_subtest_callbacks,$obj
->add_context_init_callback(sub { ... }),$obj
->add_context_release_callback(sub { ... }),$obj
->add_pre_subtest_callback(sub { ... }),$obj
->set_exit(),$obj
->set_ipc_pending($val),$pending
=$obj
->get_ipc_pending(),$timeout
=$obj
->ipc_timeout;,$obj
->set_ipc_timeout($timeout);,$drivers
=$obj
->ipc_drivers,$obj
->add_ipc_driver($DRIVER_CLASS),$bool
=$obj
->ipc_polling,$obj
->enable_ipc_polling,$obj
->disable_ipc_polling,$bool
=$obj
->no_wait,$bool
=$obj
->set_no_wait($bool),$arrayref
=$obj
->exit_callbacks,$obj
->add_exit_callback(sub { ... }),$bool
=$obj
->finalized,$ipc
=$obj
->ipc,$obj
->ipc_disable,$bool
=$obj
->ipc_disabled,$stack
=$obj
->stack,$formatter
=$obj
->formatter,$bool
=$obj
->formatter_set(),$obj
->add_formatter($class),$obj
->add_formatter($obj),$obj
->set_add_uuid_via(sub { ... }),$sub
=$obj
->add_uuid_via()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::InterceptResult - Representation of a list of events.
- DESCRIPTION
- SYNOPSIS
- METHODS
- CONSTRUCTION
$events
= Test2::API::InterceptResult->new(@EVENTS),$events
= Test2::API::InterceptResult->new_from_ref(\@EVENTS),$clone
=$events
->clone()- NORMALIZATION
@events
=$events
->event_list,$hub
=$events
->hub,$state
=$events
->state,$new
=$events
->upgrade,$events
->upgrade(in_place =>$BOOL
),$new
=$events
->squash_info,$events
->squash_info(in_place =>$BOOL
)- FILTERING
in_place =>
$BOOL
, args => \@ARGS,$events
->grep($CALL,%PARAMS
),$events
->asserts(%PARAMS),$events
->subtests(%PARAMS),$events
->diags(%PARAMS),$events
->notes(%PARAMS),$events
->errors(%PARAMS),$events
->plans(%PARAMS),$events
->causes_fail(%PARAMS),$events
->causes_failure(%PARAMS)- MAPPING
$arrayref
=$events
->map($CALL,%PARAMS
),$arrayref
=$events
->flatten(%PARAMS),$arrayref
=$events
->briefs(%PARAMS),$arrayref
=$events
->summaries(%PARAMS),$arrayref
=$events
->subtest_results(%PARAMS),$arrayref
=$events
->diag_messages(%PARAMS),$arrayref
=$events
->note_messages(%PARAMS),$arrayref
=$events
->error_messages(%PARAMS)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::InterceptResult::Event - Representation of an event for use in testing other test tools.
- DESCRIPTION
- SYNOPSIS
- METHODS
- !!! IMPORTANT NOTES ON DESIGN !!!
- ATTRIBUTES
$hashref
=$event
->facet_data,$class
=$event
->result_class- DUPLICATION
$copy
=$event
->clone- CONDENSED MULTI-FACET DATA
$bool
=$event
->causes_failure,$bool
=$event
->causes_fail, STRING_OR_EMPTY_LIST =$event
->brief,$hashref
=$event
->flatten,$hashref
=$event
->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,$hashref
=$event
->summary()- DIRECT ARBITRARY FACET ACCESS
@list_of_facets
=$event
->facet($name),$undef_or_facet
=$event
->the_facet($name)- TRACE FACET
@list_of_facets
=$event
->trace,$undef_or_hashref
=$event
->the_trace,$undef_or_arrayref
=$event
->frame,$undef_or_string
=$event
->trace_details,$undef_or_string
=$event
->trace_package,$undef_or_string
=$event
->trace_file,$undef_or_integer
=$event
->trace_line,$undef_or_string
=$event
->trace_subname,$undef_or_string
=$event
->trace_tool,$undef_or_string
=$event
->trace_signature- ASSERT FACET
$bool
=$event
->has_assert,$undef_or_hashref
=$event
->the_assert,@list_of_facets
=$event
->assert, EMPTY_LIST_OR_STRING =$event
->assert_brief- SUBTESTS (PARENT FACET)
$bool
=$event
->has_subtest,$undef_or_hashref
=$event
->the_subtest,@list_of_facets
=$event
->subtest, EMPTY_LIST_OR_OBJECT =$event
->subtest_result- CONTROL FACET (BAILOUT, ENCODING)
$bool
=$event
->has_bailout,$undef_hashref
=$event
->the_bailout, EMPTY_LIST_OR_HASHREF =$event
->bailout, EMPTY_LIST_OR_STRING =$event
->bailout_brief, EMPTY_LIST_OR_STRING =$event
->bailout_reason- PLAN FACET
$bool
=$event
->has_plan,$undef_or_hashref
=$event
->the_plan,@list_if_hashrefs
=$event
->plan, EMPTY_LIST_OR_STRING$event
->plan_brief- AMNESTY FACET (TODO AND SKIP)
$event
->has_amnesty,$event
->the_amnesty,$event
->amnesty,$event
->amnesty_reasons,$event
->has_todos,$event
->todos,$event
->todo_reasons,$event
->has_skips,$event
->skips,$event
->skip_reasons,$event
->has_other_amnesty,$event
->other_amnesty,$event
->other_amnesty_reasons- ERROR FACET (CAPTURED EXCEPTIONS)
$event
->has_errors,$event
->the_errors,$event
->errors,$event
->error_messages,$event
->error_brief- INFO FACET (DIAG, NOTE)
$event
->has_info,$event
->the_info,$event
->info,$event
->info_messages,$event
->has_diags,$event
->diags,$event
->diag_messages,$event
->has_notes,$event
->notes,$event
->note_messages,$event
->has_other_info,$event
->other_info,$event
->other_info_messages
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::InterceptResult::Hub - Hub used by InterceptResult.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::InterceptResult::Squasher - Encapsulation of the algorithm that squashes diags into assertions.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::API::Stack - Object to manage a stack of Test2::Hub instances.
- ***INTERNALS NOTE***
- DESCRIPTION
- SYNOPSIS
- METHODS
$stack
= Test2::API::Stack->new(),$hub
=$stack
->new_hub(),$hub
=$stack
->new_hub(%params),$hub
=$stack
->new_hub(%params, class =>$class
),$hub
=$stack
->top(),$hub
=$stack
->peek(),$stack
->cull,@hubs
=$stack
->all,$stack
->clear,$stack
->push($hub),$stack
->pop($hub)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::AsyncSubtest - Object representing an async subtest.
- DESCRIPTION
- SYNOPSIS
- CONSTRUCTION
name =>
$name
(required), send_to =>$hub
(optional), trace =>$trace
(optional), hub =>$hub
(optional)- METHODS
- SIMPLE ACCESSORS
$bool
=$ast
->active,$arrayref
=$ast
->children,$arrayref
=$ast
->events,$bool
=$ast
->finished,$hub
=$ast
->hub,$int
=$ast
->id,$str
=$ast
->name,$pid
=$ast
->pid,$tid
=$ast
->tid,$hub
=$ast
->send_to,$arrayref
=$ast
->stack,$trace
=$ast
->trace- INTERFACE
$ast
->attach($id),$id
=$ast
->cleave,$ctx
=$ast
->context,$ast
->detach,$ast
->finish,$ast
->finish(%options), collapse => 1, silent => 1, no_plan => 1, skip => "reason",$out
=$ast
->fork,$bool
=$ast
->pending,$bool
=$ast
->ready,$ast
->run(sub { ... }),$pid
=$ast
->run_fork(sub { ... }), my$thr
=$ast
->run_thread(sub { ... });,$passing
=$ast
->start,$ast
->stop,$ast
->wait
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::AsyncSubtest::Event::Attach - Event to attach a subtest to the parent.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::AsyncSubtest::Event::Detach - Event to detach a subtest from the parent.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::AsyncSubtest::Hub - Hub used by async subtests.
- DESCRIPTION
- SYNOPSIS
- METHODS
$ast
=$hub
->ast- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Bundle - Documentation for bundles.
- DESCRIPTION
- FAQ
Should my bundle subclass Test2::Bundle?
- HOW DO I WRITE A BUNDLE?
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Bundle::Extended - Old name for Test2::V0
- *** DEPRECATED ***
- DESCRIPTION
- SYNOPSIS
- RESOLVING CONFLICTS WITH MOOSE
- TAGS
:v1, :DEFAULT
- RENAMING ON IMPORT
':v1', '!ok', ok => {-as => 'my_ok'}
- PRAGMAS
STRICT
WARNINGS
UTF8
- PLUGINS
SRAND
UTF8
EXIT SUMMARY
- API FUNCTIONS
$ctx
= context(),$events
= intercept { ... }- TOOLS
- TARGET
$CLASS
,$class
= CLASS()- DEFER
def
$func
=>@args
;, do_def()- BASIC
ok($bool,
$name
), pass($name), fail($name), diag($message), note($message),$todo
= todo($reason), todo$reason
=> sub { ... }, skip($reason,$count
), plan($count), skip_all($reason), done_testing(), bail_out($reason)- COMPARE
is($got,
$want
,$name
), isnt($got,$do_not_want
,$name
), like($got, qr/match/,$name
), unlike($got, qr/mismatch/,$name
),$check
= match(qr/pattern/),$check
= mismatch(qr/pattern/),$check
= validator(sub { return$bool
}),$check
= hash { ... },$check
= array { ... },$check
= bag { ... },$check
= object { ... },$check
= meta { ... },$check
= number($num),$check
= string($str),$check
= check_isa($class_name),$check
= in_set(@things),$check
= not_in_set(@things),$check
= check_set(@things),$check
= item($thing),$check
= item($idx =>$thing
),$check
= field($name =>$val
),$check
= call($method =>$expect
),$check
= call_list($method =>$expect
),$check
= call_hash($method =>$expect
),$check
= prop($name =>$expect
),$check
= check($thing),$check
= T(),$check
= F(),$check
= D(),$check
= DF(),$check
= E(),$check
= DNE(),$check
= FDNE(),$check
= U(),$check
= L(),$check
= exact_ref($ref), end(), etc(), filter_items { grep { ... }@_
},$check
= event$type
=> ..,@checks
= fail_events$type
=> ..- CLASSIC COMPARE
cmp_ok($got,
$op
,$want
,$name
)- SUBTEST
subtest
$name
=> sub { ... }- CLASS
can_ok($thing,
@methods
), isa_ok($thing,@classes
), DOES_ok($thing,@roles
)- ENCODING
set_encoding($encoding)
- EXPORTS
imported_ok('function', '$scalar', ...), not_imported_ok('function', '$scalar', ...)
- REF
ref_ok($ref,
$type
), ref_is($got,$want
), ref_is_not($got,$do_not_want
)- MOCK
$control
= mock ..,$bool
= mocked($thing)- EXCEPTION
$exception
= dies { ... },$bool
= lives { ... },$bool
= try_ok { ... }- WARNINGS
$count
= warns { ... },$warning
= warning { ... },$warnings_ref
= warnings { ... },$bool
= no_warnings { ... }
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Bundle::More - ALMOST a drop-in replacement for Test::More.
- DESCRIPTION
- SYNOPSIS
- PLUGINS
- TOOLS
ok($bool,
$name
), pass($name), fail($name), skip($why,$count
),$todo
= todo($why), diag($message), note($message), plan($count), skip_all($why), done_testing(), BAIL_OUT($why), is($got,$want
,$name
), isnt($got,$donotwant
,$name
), like($got, qr/match/,$name
), unlike($got, qr/mismatch/,$name
), is_deeply($got,$want
, "Deep compare"), cmp_ok($got,$op
,$want
,$name
), isa_ok($thing,@classes
), can_ok($thing,@subs
), subtest$name
=> sub { ... }- KEY DIFFERENCES FROM Test::More
You cannot plan at import, You have three subs imported for use in planning, isa_ok accepts different arguments
- THESE FUNCTIONS AND VARIABLES HAVE BEEN REMOVED
$TODO
, use_ok(), require_ok(), todo_skip(), eq_array(), eq_hash(), eq_set(), explain(), new_ok()
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Bundle::Simple - ALMOST a drop-in replacement for Test::Simple.
- DESCRIPTION
- SYNOPSIS
- PLUGINS
- TOOLS
ok($bool,
$name
), plan($count), skip_all($reason), done_testing();- KEY DIFFERENCES FROM Test::Simple
You cannot plan at import, You have three subs imported for use in planning
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare - Test2 extension for writing deep comparison tools.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$delta
= compare($got,$expect
, \&convert),$build
= get_build(), push_build($build),$build
= pop_build($build), build($class, sub { ... }),$check
= convert($thing),$check
= convert($thing,$config
), implicit_end => 1, use_regex => 1, use_code => 0,$check
= strict_convert($thing), implicit_end => 1, use_code => 0, use_regex => 0,$compare
= relaxed_convert($thing), implicit_end => 0, use_code => 1, use_regex => 1- WRITING A VARIANT OF IS/LIKE
compare(), \&convert,
$delta
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Array - Internal representation of an array comparison.
- DESCRIPTION
- METHODS
$ref
=$arr
->inref(),$bool
=$arr
->ending,$arr
->set_ending($bool),$hashref
=$arr
->items(),$arr
->set_items($hashref),$arrayref
=$arr
->order(),$arr
->set_order($arrayref),$name
=$arr
->name(),$bool
=$arr
->verify(got =>$got
, exists =>$bool
),$idx
=$arr
->top_index(),$arr
->add_item($item),$arr
->add_item($idx =>$item
),$arr
->add_filter(sub { ... }),@deltas
=$arr
->deltas(got =>$got
, convert => \&convert, seen => \%seen)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Bag - Internal representation of a bag comparison.
- DESCRIPTION
- METHODS
$bool
=$arr
->ending,$arr
->set_ending($bool),$arrayref
=$arr
->items(),$arr
->set_items($arrayref),$name
=$arr
->name(),$bool
=$arr
->verify(got =>$got
, exists =>$bool
),$arr
->add_item($item),@deltas
=$arr
->deltas(got =>$got
, convert => \&convert, seen => \%seen)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>, Gianni Ceccarelli <dakkar@thenautilus.net>
- AUTHORS
Chad Granum <exodist@cpan.org>, Gianni Ceccarelli <dakkar@thenautilus.net>
COPYRIGHT
Test2::Compare::Base - Base class for comparison classes.
- DESCRIPTION
- SYNOPSIS
- METHODS
$dclass
=$check
->delta_class,@deltas
=$check
->deltas(id =>$id
, exists =>$bool
, got =>$got
, convert => \&convert, seen => \%seen),@lines
=$check
->got_lines($got),$op
=$check
->operator(),$op
=$check
->operator($got),$bool
=$check
->verify(id =>$id
, exists =>$bool
, got =>$got
, convert => \&convert, seen => \%seen),$name
=$check
->name,$display
=$check
->render,$delta
=$check
->run(id =>$id
, exists =>$bool
, got =>$got
, convert => \&convert, seen => \%seen)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Bool - Compare two values as booleans
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Custom - Custom field check for comparisons.
- DESCRIPTION
- SYNOPSIS
- ARGUMENTS
got,
$_
, exists, operator, name- METHODS
$code
=$cus
->code,$name
=$cus
->name,$op
=$cus
->operator,$stringify
=$cus
->stringify_got,$bool
=$cus
->verify(got =>$got
, exists =>$bool
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Daniel Böhmer <dboehmer@cpan.org>
COPYRIGHT
Test2::Compare::DeepRef - Ref comparison
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Delta - Representation of differences between nested data structures.
- DESCRIPTION
- METHODS
- CLASS METHODS
$class
->add_column($NAME => sub { ... }),$class
->add_column($NAME,%PARAMS
),$bool
=$class
->remove_column($NAME),$class
->set_column_alias($NAME,$ALIAS
)- ATTRIBUTES
$bool
=$delta
->verified,$delta
->set_verified($bool),$aref
=$delta
->id,$delta
->set_id([$type,$name
]),$val
=$delta
->got,$delta
->set_got($val),$check
=$delta
->chk,$check
=$delta
->check,$delta
->set_chk($check),$delta
->set_check($check),$aref
=$delta
->children,$delta
->set_children([$delta1,$delta2
, ...]),$dne
=$delta
->dne,$delta
->set_dne($dne),$e
=$delta
->exception,$delta
->set_exception($e)- OTHER
$string
=$delta
->render_got,$string
=$delta
->render_check,$bool
=$delta
->should_show,$aref
=$delta
->filter_visible,$aref
=$delta
->table_header,$string
=$delta
->table_op,$string
=$delta
->table_check_lines,$string
=$delta
->table_got_lines,$aref
=$delta
->table_rows,@table_lines
=$delta
->table
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Event - Event specific Object subclass.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::EventMeta - Meta class for events in deep comparisons
- DESCRIPTION
- DEFINED CHECKS
file, line, package, subname, debug, tid, pid
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Float - Compare two values as numbers with tolerance.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Andrew Grangaard <spazm@cpan.org>
COPYRIGHT
Test2::Compare::Hash - Representation of a hash in a deep comparison.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Isa - Check if the value is an instance of the class.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, TOYAMA Nao <nanto@moon.email.ne.jp>
COPYRIGHT
Test2::Compare::Meta - Check library for meta-checks
- DESCRIPTION
- DEFINED CHECKS
blessed, reftype, isa, this, size
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Negatable - Poor mans 'role' for compare objects that can be negated.
- DESCRIPTION
- WHY?
- ATTRIBUTES
$bool
=$obj
->negate,$obj
->set_negate($bool),$attr
= NEGATE()- METHODS
$clone
=$obj
->clone_negate(),$obj
->toggle_negate()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Number - Compare two values as numbers
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Object - Representation of an object during deep comparison.
- DESCRIPTION
- METHODS
$class
=$obj
->meta_class,$class
=$obj
->object_base,$obj
->add_prop(...),$obj
->add_field(...),$obj
->add_item(...),$obj
->add_call($method,$check
),$obj
->add_call($method,$check
,$name
),$obj
->add_call($method,$check
,$name
,$context
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::OrderedSubset - Internal representation of an ordered subset.
- DESCRIPTION
- METHODS
$ref
=$arr
->inref(),$arrayref
=$arr
->items(),$arr
->set_items($arrayref),$name
=$arr
->name(),$bool
=$arr
->verify(got =>$got
, exists =>$bool
),$arr
->add_item($item),@deltas
=$arr
->deltas(got =>$got
, convert => \&convert, seen => \%seen)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Pattern - Use a pattern to validate values in a deep comparison.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Ref - Ref comparison
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Regex - Regex direct comparison
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Scalar - Representation of a Scalar Ref in deep comparisons
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Set - Allows a field to be matched against a set of checks.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::String - Compare two values as strings
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Undef - Check that something is undefined
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Compare::Wildcard - Placeholder check.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event - Base class for events
- DESCRIPTION
- SYNOPSIS
- METHODS
- GENERAL
$trace
=$e
->trace,$bool_or_undef
=$e
->related($e2),$e
->add_amnesty({tag =>$TAG
, details =>$DETAILS
});,$uuid
=$e
->uuid,$class
=$e
->load_facet($name),@classes
=$e
->FACET_TYPES(),@classes
= Test2::Event->FACET_TYPES()- NEW API
$hashref
=$e
->common_facet_data();,$hashref
=$e
->facet_data(),$hashref
=$e
->facets(),@errors
=$e
->validate_facet_data();,@errors
=$e
->validate_facet_data(%params);,@errors
=$e
->validate_facet_data(\%facets,%params
);,@errors
= Test2::Event->validate_facet_data(%params);,@errors
= Test2::Event->validate_facet_data(\%facets,%params
);, require_facet_class =>$BOOL
, about => {...}, assert => {...}, control => {...}, meta => {...}, parent => {...}, plan => {...}, trace => {...}, amnesty => [{...}, ...], errors => [{...}, ...], info => [{...}, ...]- LEGACY API
$bool
=$e
->causes_fail,$bool
=$e
->increments_count,$e
->callback($hub),$num
=$e
->nested,$bool
=$e
->global,$code
=$e
->terminate,$msg
=$e
->summary, ($count,$directive
,$reason
) =$e
->sets_plan(),$bool
=$e
->diagnostics,$bool
=$e
->no_display,$id
=$e
->in_subtest,$id
=$e
->subtest_id
- THIRD PARTY META-DATA
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Bail - Bailout!
- DESCRIPTION
- SYNOPSIS
- METHODS
$reason
=$e
->reason- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Diag - Diag event type
- DESCRIPTION
- SYNOPSIS
- ACCESSORS
$diag
->message- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Encoding - Set the encoding for the output stream
- DESCRIPTION
- SYNOPSIS
- METHODS
$encoding
=$e
->encoding- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Exception - Exception event
- DESCRIPTION
- SYNOPSIS
- METHODS
$reason
=$e
->error- CAVEATS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Fail - Event for a simple failed assertion
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Generic - Generic event type.
- DESCRIPTION
- SYNOPSIS
- METHODS
$e
->facet_data($data),$data
=$e
->facet_data,$e
->callback($hub),$e
->set_callback(sub { ... }),$bool
=$e
->causes_fail,$e
->set_causes_fail($bool),$bool
=$e
->diagnostics,$e
->set_diagnostics($bool),$bool_or_undef
=$e
->global,@bool_or_empty
=$e
->global,$e
->set_global($bool_or_undef),$bool
=$e
->increments_count,$e
->set_increments_count($bool),$bool
=$e
->no_display,$e
->set_no_display($bool),@plan
=$e
->sets_plan,$e
->set_sets_plan(\@plan),$summary
=$e
->summary,$e
->set_summary($summary_or_undef),$int_or_undef
=$e
->terminate,@int_or_empty
=$e
->terminate,$e
->set_terminate($int_or_undef)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Note - Note event type
- DESCRIPTION
- SYNOPSIS
- ACCESSORS
$note
->message- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Ok - Ok event type
- DESCRIPTION
- SYNOPSIS
- ACCESSORS
$rb
=$e
->pass,$name
=$e
->name,$b
=$e
->effective_pass- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Pass - Event for a simple passing assertion
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Plan - The event of a plan
- DESCRIPTION
- SYNOPSIS
- ACCESSORS
$num
=$plan
->max,$dir
=$plan
->directive,$reason
=$plan
->reason- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Skip - Skip event type
- DESCRIPTION
- SYNOPSIS
- ACCESSORS
$reason
=$e
->reason- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Subtest - Event for subtest types
- DESCRIPTION
- ACCESSORS
$arrayref
=$e
->subevents,$bool
=$e
->buffered- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::TAP::Version - Event for TAP version.
- DESCRIPTION
- SYNOPSIS
- METHODS
$version
=$e
->version- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::V2 - Second generation event.
- DESCRIPTION
- SYNOPSIS
USING A CONTEXT
USING THE CONSTRUCTOR
- METHODS
$fd
=$e
->facet_data(),$about
=$e
->about(),$trace
=$e
->trace()- MUTATION
$e
->add_amnesty({...}),$e
->add_hub({...}),$e
->set_uuid($UUID),$e
->set_trace($trace)- LEGACY SUPPORT METHODS
causes_fail, diagnostics, global, increments_count, no_display, sets_plan, subtest_id, summary, terminate
- THIRD PARTY META-DATA
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Event::Waiting - Tell all procs/threads it is time to be done
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet - Base class for all event facets.
- DESCRIPTION
- METHODS
$key
=$facet_class
->facet_key(),$bool
=$facet_class
->is_list(),$clone
=$facet
->clone(),$clone
=$facet
->clone(%replace)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::About - Facet with event details.
- DESCRIPTION
- FIELDS
$string
=$about
->{details},$string
=$about
->details(),$package
=$about
->{package},$package
=$about
->package(),$bool
=$about
->{no_display},$bool
=$about
->no_display(),$uuid
=$about
->{uuid},$uuid
=$about
->uuid(),$uuid
=$about
->{eid},$uuid
=$about
->eid()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Amnesty - Facet for assertion amnesty.
- DESCRIPTION
- NOTES
- FIELDS
$string
=$amnesty
->{details},$string
=$amnesty
->details(),$short_string
=$amnesty
->{tag},$short_string
=$amnesty
->tag(),$bool
=$amnesty
->{inherited},$bool
=$amnesty
->inherited()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Assert - Facet representing an assertion.
- DESCRIPTION
- FIELDS
$string
=$assert
->{details},$string
=$assert
->details(),$bool
=$assert
->{pass},$bool
=$assert
->pass(),$bool
=$assert
->{no_debug},$bool
=$assert
->no_debug(),$int
=$assert
->{number},$int
=$assert
->number()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Control - Facet for hub actions and behaviors.
- DESCRIPTION
- FIELDS
$string
=$control
->{details},$string
=$control
->details(),$bool
=$control
->{global},$bool
=$control
->global(),$exit
=$control
->{terminate},$exit
=$control
->terminate(),$bool
=$control
->{halt},$bool
=$control
->halt(),$bool
=$control
->{has_callback},$bool
=$control
->has_callback(),$encoding
=$control
->{encoding},$encoding
=$control
->encoding(),$phase
=$control
->{phase},$phase
=$control
->phase()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Error - Facet for errors that need to be shown.
- DESCRIPTION
- NOTES
- FIELDS
$string
=$error
->{details},$string
=$error
->details(),$short_string
=$error
->{tag},$short_string
=$error
->tag(),$bool
=$error
->{fail},$bool
=$error
->fail()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Hub - Facet for the hubs an event passes through.
- DESCRIPTION
- FACET FIELDS
$string
=$trace
->{details},$string
=$trace
->details(),$int
=$trace
->{pid},$int
=$trace
->pid(),$int
=$trace
->{tid},$int
=$trace
->tid(),$hid
=$trace
->{hid},$hid
=$trace
->hid(),$huuid
=$trace
->{huuid},$huuid
=$trace
->huuid(),$int
=$trace
->{nested},$int
=$trace
->nested(),$bool
=$trace
->{buffered},$bool
=$trace
->buffered()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Info - Facet for information a developer might care about.
- DESCRIPTION
- NOTES
- FIELDS
$string_or_structure
=$info
->{details},$string_or_structure
=$info
->details(),$structure
=$info
->{table},$structure
=$info
->table(),$short_string
=$info
->{tag},$short_string
=$info
->tag(),$bool
=$info
->{debug},$bool
=$info
->debug(),$bool
=$info
->{important},$bool
=$info
->important- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Info::Table - Intermediary representation of a table.
- DESCRIPTION
- SYNOPSIS
- ATTRIBUTES
$header_aref
=$t
->header(),$rows_aref
=$t
->rows(),$bool
=$t
->collapse(),$aref
=$t
->no_collapse(),$str
=$t
->as_string(),$href
=$t
->as_hash(),%args
=$t
->info_args()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Meta - Facet for meta-data
- DESCRIPTION
- METHODS AND FIELDS
$anything
=$meta
->{anything},$anything
=$meta
->anything()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Parent - Facet for events contains other events
- DESCRIPTION
- FIELDS
$string
=$parent
->{details},$string
=$parent
->details(),$hid
=$parent
->{hid},$hid
=$parent
->hid(),$arrayref
=$parent
->{children},$arrayref
=$parent
->children(),$bool
=$parent
->{buffered},$bool
=$parent
->buffered()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Plan - Facet for setting the plan
- DESCRIPTION
- FIELDS
$string
=$plan
->{details},$string
=$plan
->details(),$positive_int
=$plan
->{count},$positive_int
=$plan
->count(),$bool
=$plan
->{skip},$bool
=$plan
->skip(),$bool
=$plan
->{none},$bool
=$plan
->none()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Render - Facet that dictates how to render an event.
- DESCRIPTION
- FIELDS
$string
=$render
->[#]->{details},$string
=$render
->[#]->details(),$string
=$render
->[#]->{tag},$string
=$render
->[#]->tag(),$string
=$render
->[#]->{facet},$string
=$render
->[#]->facet(),$mode
=$render
->[#]->{mode},$mode
=$render
->[#]->mode(), calculated, replace- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::EventFacet::Trace - Debug information for events
- DESCRIPTION
- SYNOPSIS
- FACET FIELDS
$string
=$trace
->{details},$string
=$trace
->details(),$frame
=$trace
->{frame},$frame
=$trace
->frame(),$int
=$trace
->{pid},$int
=$trace
->pid(),$int
=$trace
->{tid},$int
=$trace
->tid(),$id
=$trace
->{cid},$id
=$trace
->cid(),$uuid
=$trace
->{uuid},$uuid
=$trace
->uuid(), ($pkg,$file
,$line
,$subname
) =$trace
->call,@caller
=$trace
->full_call,$warning_bits
=$trace
->warning_bits- DISCOURAGED HUB RELATED FIELDS
$hid
=$trace
->{hid},$hid
=$trace
->hid(),$huuid
=$trace
->{huuid},$huuid
=$trace
->huuid(),$int
=$trace
->{nested},$int
=$trace
->nested(),$bool
=$trace
->{buffered},$bool
=$trace
->buffered()
- METHODS
$trace
->set_detail($msg),$msg
=$trace
->detail,$str
=$trace
->debug,$trace
->alert($MESSAGE),$trace
->throw($MESSAGE), ($package,$file
,$line
,$subname
) =$trace
->call(),$pkg
=$trace
->package,$file
=$trace
->file,$line
=$trace
->line,$subname
=$trace
->subname,$sig
= trace->signature- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Formatter - Namespace for formatters.
- DESCRIPTION
- CREATING FORMATTERS
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
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Formatter::TAP - Standard TAP formatter
- DESCRIPTION
- SYNOPSIS
- METHODS
$bool
=$tap
->no_numbers,$tap
->set_no_numbers($bool),$arrayref
=$tap
->handles,$tap
->set_handles(\@handles);,$encoding
=$tap
->encoding,$tap
->encoding($encoding),$tap
->write($e,$num
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Kent Fredric <kentnl@cpan.org>
COPYRIGHT
Test2::Hub - The conduit through which all events flow.
- SYNOPSIS
- DESCRIPTION
- COMMON TASKS
SENDING EVENTS
ALTERING OR REMOVING EVENTS
LISTENING FOR EVENTS
POST-TEST BEHAVIORS
SETTING THE FORMATTER
- METHODS
$hub
->send($event),$hub
->process($event),$old
=$hub
->format($formatter),$sub
=$hub
->listen(sub { ... },%optional_params
),$hub
->unlisten($sub),$sub
=$hub
->filter(sub { ... },%optional_params
),$sub
=$hub
->pre_filter(sub { ... },%optional_params
),$hub
->unfilter($sub),$hub
->pre_unfilter($sub),$hub
->follow_op(sub { ... }),$sub
=$hub
->add_context_acquire(sub { ... });,$hub
->remove_context_acquire($sub);,$sub
=$hub
->add_context_init(sub { ... });,$hub
->remove_context_init($sub);,$sub
=$hub
->add_context_release(sub { ... });,$hub
->remove_context_release($sub);,$hub
->cull(),$pid
=$hub
->pid(),$tid
=$hub
->tid(),$hud
=$hub
->hid(),$uuid
=$hub
->uuid(),$ipc
=$hub
->ipc(),$hub
->set_no_ending($bool),$bool
=$hub
->no_ending,$bool
=$hub
->active,$hub
->set_active($bool)- STATE METHODS
$hub
->reset_state(),$num
=$hub
->count,$num
=$hub
->failed,$bool
=$hub
->ended,$bool
=$hub
->is_passing,$hub
->is_passing($bool),$hub
->plan($plan),$plan
=$hub
->plan,$bool
=$hub
->check_plan
- THIRD PARTY META-DATA
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Hub::Interceptor - Hub used by interceptor to grab results.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Hub::Interceptor::Terminator - Exception class used by Test2::Hub::Interceptor
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Hub::Subtest - Hub used by subtests
- DESCRIPTION
- TOGGLES
$bool
=$hub
->manual_skip_all,$hub
->set_manual_skip_all($bool)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::IPC - Turn on IPC for threading or forking support.
- SYNOPSIS
DISABLING IT
- EXPORTS
cull()
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::IPC::Driver - Base class for Test2 IPC drivers.
- SYNOPSIS
- METHODS
$self
->abort($msg),$self
->abort_trace($msg)- LOADING DRIVERS
- WRITING DRIVERS
- METHODS SUBCLASSES MUST IMPLEMENT
$ipc
->is_viable,$ipc
->add_hub($hid),$ipc
->drop_hub($hid),$ipc
->send($hid,$event
);,$ipc
->send($hid,$event
,$global
);,@events
=$ipc
->cull($hid),$ipc
->waiting()- METHODS SUBCLASSES MAY IMPLEMENT OR OVERRIDE
$ipc
->driver_abort($msg)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::IPC::Driver::Files - Temp dir + Files concurrency model.
- DESCRIPTION
- SYNOPSIS
- ENVIRONMENT VARIABLES
T2_KEEP_TEMPDIR=0, T2_TEMPDIR_TEMPLATE='test2-XXXXXX'
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual - Documentation hub for Test2 and Test2-Suite.
- DESCRIPTION
- WRITING TESTS
- WRITING TOOLS
- GUTS AND INNER WORKINGS
- A NOTE ON CONCURRENCY (SUPPORT FOR FORKING AND THREADING)
- CONTRIBUTING
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy - The hub for documentation of the inner workings of Test2 components.
- DESCRIPTION
- END TO END
- EVENTS
- THE CONTEXT
- THE API AND THE API INSTANCE
- HUBS
- THE IPC SYSTEM
- INTERNAL UTILITIES
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::API - Internals documentation for the API.
- DESCRIPTION
- IMPLEMENTATION DETAILS
Test2::API
Test2::API::Instance
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::Context - Internals documentation for the Context objects.
- DESCRIPTION
- WHAT IS THE CONTEXT OBJECT?
PRIMARY INTERFACE FOR TEST TOOLS
TRACK FILE AND LINE NUMBERS FOR ERROR REPORTING
PRESERVE $?, $!, $^E AND $@
FINALIZE THE API STATE
FIND/CREATE THE CURRENT/ROOT HUB
PROVIDE HOOKS
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::EndToEnd, Test2::Manual::EndToEnd - Overview of Test2 from load to finish.
- DESCRIPTION
- WHAT HAPPENS WHEN I LOAD THE API?
A singleton instance of Test2::API::Instance is created, Several API functions are defined that use the singleton instance, Then what?
- WHAT HAPPENS WHEN I USE A TOOL?
A tool function is run, The tool acquires a context object, The tool uses the context object to create, send, and return events, When done the tool MUST release the context, The tool returns
- WHAT HAPPENS WHEN I ACQUIRE A CONTEXT?
$!, $@, $? and $^E are captured and preserved, The API state is changed to 'loaded', The current hub is found, Context acquire hooks fire, Any existing context is found, Stack depth is measured, A new context is created (if no existing context was found), Context init hooks fire (if no existing context was found), $!, $@, $?, and $^E are restored, The context is returned
- WHAT HAPPENS WHEN I SEND AN EVENT?
The Test2::Event::Ok module is loaded, A new instance of Test2::Event::Ok is created, The event object is sent to the hub, The hub runs the event through any filters, The global test state is updated to reflect the event, The event is sent to the formatter, The event is sent to all listeners
- WHAT HAPPENS WHEN I RELEASE A CONTEXT?
The current context clone is released, If this was the canonical context, it will actually release, Release hooks are called, The context is cleared, $!, $@, $?, and $^E are restored
- WHAT HAPPENS WHEN I USE done_testing()?
Any pending IPC events will be culled, Follow-up hooks are run, The final plan event is generated and processed, The current hub is finalized
- WHAT HAPPENS WHEN A TEST SCRIPT IS DONE?
API Versions are checked, Any remaining context objects are cleaned up, Child processes are sent a 'waiting' event, The script will wait for all child processes and/or threads to complete, The hub stack is cleaned up, The root hub is finalized, Exit callbacks are called, The scripts exit value ($?) is set, Broken module diagnostics
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::Event - The internals of events
- DESCRIPTION
- HISTORY
- THE EVENT OBJECT
- THE FACET API
assert => {details =>
$name
, pass =>$bool
, no_debug =>$bool
, number =>$maybe_int
}, about => {details =>$string
, no_display =>$bool
, package =>$pkg
}, amnesty => [{details =>$string
, tag =>$short_string
, inherited =>$bool
}], control => {details =>$string
, global =>$bool
, terminate =>$maybe_int
, halt =>$bool
, has_callback =>$bool
, encoding =>$enc
}, errors => [{details =>$string
, tag =>$short_string
, fail =>$bool
}], info => [{details =>$string
, tag =>$short_string
, debug =>$bool
, important =>$bool
}], parent => {details =>$string
, hid =>$hid
, children => [...], buffered => 1}, plan => {details =>$string
, count =>$int
, skip =>$bool
, none =>$bool
}, trace => {details =>$string
, frame => [$pkg,$file
,$line
,$sub
], pid =>$int
, tid =>$int
, cid =>$cid
, hid =>$hid
, nested =>$int
, buffered =>$bool
}- CUSTOM FACETS
$string
=$facet_class
->facet_key,$bool
=$facet_class
->is_list
- THE OLD API
$bool
=$e
->causes_fail,$bool
=$e
->increments_count,$e
->callback($hub),$num
=$e
->nested,$bool
=$e
->global,$code
=$e
->terminate,$msg
=$e
->summary, ($count,$directive
,$reason
) =$e
->sets_plan(),$bool
=$e
->diagnostics,$bool
=$e
->no_display- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::Hubs - Internals documentation for the hub stack, and hubs.
- DESCRIPTION
- WHAT IS A HUB?
- WHY DO WE HAVE A HUB STACK?
subtests, testing your test tools
- WHEN SHOULD I ADD A HUB TO THE STACK?
- WHERE IS THE STACK?
- WHAT ABOUT THE ROOT HUB?
- HOW DO HUBS HANDLE IPC?
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::IPC - Manual for the IPC system.
- DESCRIPTION
- WHAT IS THE IPC SYSTEM
- HOW DOES THE IPC SYSTEM EFFECT EVERYTHING?
- WHAT DOES AN IPC DRIVER DO?
- HOW DOES THE DEFAULT IPC DRIVER WORK?
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Anatomy::Utilities - Overview of utilities for Test2.
- DESCRIPTION
- Test2::Util
- Test2::Util::ExternalMeta
- Test2::Util::Facets2Legacy
- Test2::Util::HashBase
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Concurrency - Documentation for Concurrency support.
- FORKING
Test2
Test::Builder
Test2::Suite
Test::SharedFork
Others
- THREADING
Test2
Test::Builder
Test2::Suite
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Contributing - How to contribute to the Test2 project.
- DESCRIPTION
- WAYS TO HELP
- REPORT BUGS
Test2/Test-Builder/Test-More, Test2-Suite, Test2-Harness
SUBMIT PATCHES
ADD/UPDATE DOCUMENTATION
ANSWER QUESTIONS ON IRC/SLACK
WRITE NEW TOOLS USING TEST2
PORT OLD TOOLS TO TEST2
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Testing - Hub for documentation about writing tests with Test2.
DESCRIPTION
Test2::Manual::Testing, When writing tests there are a couple namespaces to focus on
Test2::Tools::*, Test2::Plugins::*, Test2::Bundle::*, Test2::Require::*
- LISTING DEPENDENCIES
- TUTORIALS
SIMPLE/INTRODUCTION TUTORIAL
MIGRATING FROM TEST::BUILDER and TEST::MORE
ADVANCED PLANNING
TODO TESTS
SUBTESTS
COMPARISONS
TESTING EXPORTERS
TESTING CLASSES
TRAPPING
DEFERRED TESTING
MANAGING ENCODINGS
AUTO-ABORT ON FAILURE
CONTROLLING RANDOM BEHAVIOR
WRITING YOUR OWN BUNDLE
- TOOLSET DOCUMENTATION
- PLUGIN DOCUMENTATION
- BUNDLE DOCUMENTATION
- REQUIRE DOCUMENTATION
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Testing::Introduction - Introduction to testing with Test2.
- DESCRIPTION
- BOILERPLATE
- THE TEST FILE
use Test2::V0;, done_testing;
DIST CONFIG
- MAKING ASSERTIONS
- RUNNING THE TEST
RUN DIRECTLY
USING YATH
USING PROVE
- THE "PLAN"
done_testing(), plan($COUNT)
- ADDITIONAL ASSERTION TOOLS
is($a,
$b
,$description
), like($a,$b
,$description
)- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Testing::Migrating - How to migrate existing tests from Test::More to Test2.
- DESCRIPTION
- LEGACY TEST
- BOILERPLATE
Replace Test::More with Test2::V0, NOTE: srand, Stop using use_ok(), Stop using require_ok(), Remove strict/warnings (optional), Change where the plan is set
- SIMPLE ASSERTIONS
- TODO
todo
$reason
=> sub { ... }, { my$TODO
= todo$reason
; ... }- DEEP COMPARISONS
- COMPARING REFERENCES
- TOOLS THAT ARE GONE
- TOOLS THAT HAVE CHANGED
- FINAL VERSION
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Testing::Planning - The many ways to set a plan.
- DESCRIPTION
- TEST COUNT
- DONE TESTING
- SKIP ALL
- CUSTOM PLAN EVENT
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Testing::Todo - Tutorial for marking tests as TODO.
- DESCRIPTION
- THE TOOL
TODO BLOCK
TODO VARIABLE
- MANUAL TODO EVENTS
- HOW THE TODO TOOLS WORK UNDER THE HOOD
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::FirstTool - Write your first tool with Test2.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
sub ok($;$@) {, my ($bool,
$name
,@diag
) =@_
;, my$ctx
= context();, return$ctx
->pass_and_release($name) if$bool
;, return$ctx
->fail_and_release($name,@diag
);- CONTEXT OBJECT DOCUMENTATION
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Formatter - How to write a custom formatter, in our case a JSONL formatter.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
use base qw/Test2::Formatter/;, sub new { bless {}, shift }, sub encoding {};, sub write { ... }, my ($self,
$e
,$num
,$f
) =@_
;,$self
,$e
,$num
,$f
,$f
||=$e
->facet_data;, print encode_json($f), "\n";- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Nesting - Tutorial for using other tools within your own.
- DESCRIPTION
- NAIVE WAY
WHATS WRONG WITH IT?
HOW TO FIX IT
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Plugin::TestExit - How to safely add pre-exit behaviors.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
use Test2::API qw{test2_add_callback_exit};, test2_add_callback_exit(sub { ... });, my ($ctx,
$orig_code
,$new_exit_code_ref
) =@_
, return if$orig_code
== 42, $$new_exit_code_ref = 42- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Plugin::TestingDone - Run code when the test file is finished, or when done_testing is called.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
use Test2::API qw{test2_add_callback_testing_done};, test2_add_callback_testing_done(sub { ... });, ok(!$some_global, '$some_global was not set'), print "The test file is done, or done_testing was just called\n"
- UNDER THE HOOD
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Plugin::ToolCompletes - How to add behaviors that occur when a tool completes work.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
use Test2::API qw{test2_add_callback_context_release};, test2_add_callback_context_release(sub { ... }), my
$ctx_ref
= shift, print "Context was released\n"- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Plugin::ToolStarts - How to add behaviors that occur when a tool starts work.
- DESCRIPTION
- COMPLETE CODE UP FRONT
- LINE BY LINE
use Test2::API qw{test2_add_callback_context_init test2_add_callback_context_acquire};, test2_add_callback_context_acquire(sub { ... }), my
$params_ref
= shift, print "A tool has requested the context\n", test2_add_callback_context_init(sub { ... }), my$ctx_ref
= shift, print "A new context was created\n"- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Subtest - How to implement a tool that makes use of subtests.
- DESCRIPTION
- WHICH TYPE OF SUBTEST DO I NEED?
- SUBTEST WITH USER SUPPLIED CODEREF
@args
, \%params, buffered =>$bool
, inherit_trace =>$bool
, no_fork =>$bool
SUBTEST WITH TOOL-SIDE CODEREF
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::TestBuilder - This section maps Test::Builder methods to Test2 concepts.
- DESCRIPTION
- CONTEXT
- TEST BUILDER METHODS
$tb
->BAIL_OUT($reason),$tb
->diag($string),$tb
->note($string),$tb
->done_testing,$tb
->like,$tb
->unlike,$tb
->ok($bool,$name
),$tb
->subtest,$tb
->todo_start,$tb
->todo_end,$tb
->output,$tb
->failure_output, and$tb
->todo_output- LEVEL
- TODO
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Manual::Tooling::Testing - Tutorial on how to test your testing tools.
- DESCRIPTION
- THE HOLY GRAIL OF TESTING YOUR TOOLS
- ADDITIONAL HELPERS
- Test2::Tools::Tester
- Test2::Tools::HarnessTester
- Test2::Tools::Compare
event
$TYPE
=> .., fail_events$TYPE
=> ..
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Mock - Module for managing mocked classes and instances.
- DESCRIPTION
- SYNOPSIS
- CONSTRUCTION
- METHODS
$mock
= Test2::Mock->new(class =>$CLASS
, ...),$mock
->track($bool),$hashref
=$mock
->sub_tracking,$arrayref
=$mock
->call_tracking,$mock
->clear_sub_tracking(),$mock
->clear_sub_tracking(\@subnames),$mock
->clear_call_tracking(),$mock
->add('symbol' => ..., 'symbol2' => ...),$mock
->override('symbol1' => ..., 'symbol2' => ...),$mock
->set('symbol1' => ..., 'symbol2' => ...),$mock
->restore($SYMBOL),$mock
->reset($SYMBOL),$mock
->orig($SYMBOL),$mock
->current($SYMBOL),$mock
->reset_all,$mock
->add_constructor($NAME =>$TYPE
),$mock
->override_constructor($NAME =>$TYPE
),$mock
->before($NAME, sub { ... }),$mock
->after($NAME, sub { ... }),$mock
->around($NAME, sub { ... }),$mock
->autoload,$mock
->block_load,$pm_file
=$mock
->file,$bool
=$mock
->purge_on_destroy($bool),$stash
=$mock
->stash,$class
=$mock
->class,$p
=$mock
->parent,$c
=$mock
->child- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin - Documentation for plugins
- DESCRIPTION
- FAQ
Should I subclass Test2::Plugin?
- HOW DO I WRITE A PLUGIN?
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::BailOnFail - Automatically bail out of testing on the first test failure.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::DieOnFail - Automatically die on the first test failure.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::ExitSummary - Add extra diagnostics on failure at the end of the test.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::SRand - Control the random seed for more controlled test environments.
- DESCRIPTION
- SYNOPSIS
- NOTE ON LOAD ORDER
- CAVEATS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::Times - Output timing data at the end of the test.
- CAVEAT
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Plugin::UTF8 - Test2 plugin to test with utf8.
- DESCRIPTION
- SYNOPSIS
- import options
encoding_only
- NOTES
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require - Base class and documentation for skip-unless type test packages.
- DESCRIPTION
- HOW DO I WRITE A 'REQUIRE' MODULE?
AS A SUBCLASS
STAND-ALONE
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::AuthorTesting - Only run a test when the AUTHOR_TESTING environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::AutomatedTesting - Only run a test when the AUTOMATED_TESTING environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::EnvVar - Only run a test when a specific environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::ExtendedTesting - Only run a test when the EXTENDED_TESTING environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::Fork - Skip a test file unless the system supports forking
- DESCRIPTION
- SYNOPSIS
- EXPLANATION
- SEE ALSO
Test2::Require::CanReallyfork, Test2::Require::CanThread
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::Module - Skip tests if certain packages are not installed, or insufficient versions.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::NonInteractiveTesting - Only run a test when the NONINTERACTIVE_TESTING environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::Perl - Skip the test unless the necessary version of Perl is installed.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::RealFork - Skip a test file unless the system supports true forking
- DESCRIPTION
- SYNOPSIS
- SEE ALSO
Test2::Require::Canfork, Test2::Require::CanThread
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::ReleaseTesting - Only run a test when the RELEASE_TESTING environment variable is set.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Require::Threads - Skip a test file unless the system supports threading
- DESCRIPTION
- SYNOPSIS
- EXPLANATION
- SEE ALSO
Test2::Require::CanFork, Test2
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Suite - Distribution with a rich set of tools built upon the Test2 framework.
- DESCRIPTION
- WHAT ARE TOOLS, PLUGINS, AND BUNDLES?
TOOLS, PLUGINS, BUNDLES
- INCLUDED BUNDLES
Test2::V#, Extended, More, Simple
- INCLUDED TOOLS
Basic, Compare, ClassicCompare, Class, Defer, Encoding, Exports, Mock, Ref, Spec, Subtest, Target
- INCLUDED PLUGINS
BailOnFail, DieOnFail, ExitSummary, SRand, UTF8
- INCLUDED REQUIREMENT CHECKERS
AuthorTesting, EnvVar, Fork, RealFork, Module, Perl, Threads
- SEE ALSO
- CONTACTING US
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Todo - TODO extension for Test2.
- DESCRIPTION
- SYNOPSIS
- CONSTRUCTION OPTIONS
reason (required), hub (optional)
- INSTANCE METHODS
$todo
->end- CLASS METHODS
$count
= Test2::Todo->hub_in_todo($hub)- OTHER NOTES
How it works
$todo
->end is called at destructionCan I use multiple instances?
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools - Documentation for Tools.
- DESCRIPTION
- FAQ
Why is it called Test2::Tools, and not Test2::Tool?, Should my tools subclass Test2::Tools?
- HOW DO I WRITE A 'TOOLS' MODULE?
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::AsyncSubtest - Tools for writing async subtests.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$ast
= async_subtest$name
,$ast
= async_subtest$name
=> sub { ... },$ast
= async_subtest$name
=> \%hub_params, sub { ... },$ast
= fork_subtest$name
=> sub { ... },$ast
= fork_subtest$name
=> \%hub_params, sub { ... },$ast
= thread_subtest$name
=> sub { ... },$ast
= thread_subtest$name
=> \%hub_params, sub { ... }- NOTES
Async Subtests are always buffered, Do not use done_testing() yourself
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Basic - Test2 implementation of the basic testing tools.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
- PLANNING
plan($num), plan('tests' =>
$num
), plan('skip_all' =>$reason
), skip_all($reason), done_testing, bail_out($reason)- ASSERTIONS
ok($bool), ok($bool,
$name
), ok($bool,$name
,@diag
), pass(), pass($name), fail(), fail($name), fail($name,@diag
)- DIAGNOSTICS
diag(@messages), note(@messages)
- META
$todo
= todo($reason), todo$reason
=> sub { ... }, skip($why), skip($why,$count
)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Class - Test2 implementation of the tools for testing classes.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
can_ok($thing,
@methods
), can_ok($thing, \@methods,$test_name
), isa_ok($thing,@classes
), isa_ok($thing, \@classes,$test_name
), DOES_ok($thing,@roles
), DOES_ok($thing, \@roles,$test_name
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::ClassicCompare - Classic (Test::More style) comparison tools.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$bool
= is($got,$expect
),$bool
= is($got,$expect
,$name
),$bool
= is($got,$expect
,$name
,@diag
),$bool
= isnt($got,$dont_expect
),$bool
= isnt($got,$dont_expect
,$name
),$bool
= isnt($got,$dont_expect
,$name
,@diag
),$bool
= like($got,$pattern
),$bool
= like($got,$pattern
,$name
),$bool
= like($got,$pattern
,$name
,@diag
),$bool
= unlike($got,$pattern
),$bool
= unlike($got,$pattern
,$name
),$bool
= unlike($got,$pattern
,$name
,@diag
),$bool
= is_deeply($got,$expect
),$bool
= is_deeply($got,$expect
,$name
),$bool
= is_deeply($got,$expect
,$name
,@diag
), cmp_ok($got,$op
,$expect
), cmp_ok($got,$op
,$expect
,$name
), cmp_ok($got,$op
,$expect
,$name
,@diag
), != (num), >= (num), <= (num), > (num), <
(num), <=> (num), eq (str), ne (str), gt (str), lt (str), ge (str), le (str), cmp (str), !~ (str), &&, ||, xor, or, and, //, &, |, ~~- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Compare - Tools for comparing deep data structures.
- DESCRIPTION
- SYNOPSIS
ADVANCED
- COMPARISON TOOLS
$bool
= is($got,$expect
),$bool
= is($got,$expect
,$name
),$bool
= is($got,$expect
,$name
,@diag
),$bool
= isnt($got,$expect
),$bool
= isnt($got,$expect
,$name
),$bool
= isnt($got,$expect
,$name
,@diag
),$bool
= like($got,$expect
),$bool
= like($got,$expect
,$name
),$bool
= like($got,$expect
,$name
,@diag
),$bool
= unlike($got,$expect
),$bool
= unlike($got,$expect
,$name
),$bool
= unlike($got,$expect
,$name
,@diag
)- QUICK CHECKS
$check
= T(),$check
= F(),$check
= D(),$check
= U(),$check
= DF(),$check
= E(),$check
= DNE(),$check
= FDNE(),$check
= L()- VALUE SPECIFICATIONS
$check
= string "...",$check
= !string "...",$check
= number ...;,$check
= !number ...;,$check
= number_lt ...;,$check
= number_le ...;,$check
= number_ge ...;,$check
= number_gt ...;,$check
= float ...;,$check
= !float ...;,$check
= within($num,$tolerance
);,$check
= !within($num,$tolerance
);,$check
= rounded($num,$precision
);,$check
= !rounded($num,$precision
);,$check
= bool ...;,$check
= !bool ...;,$check
= check_isa ...;,$check
= !check_isa ...;,$check
= match qr/.../,$check
= !mismatch qr/.../,$check
= !match qr/.../,$check
= mismatch qr/.../,$check
= validator(sub{ ... }),$check
= validator($NAME => sub{ ... }),$check
= validator($OP,$NAME
, sub{ ... }),$check
= exact_ref($ref)- SET BUILDERS
my
$check
= check_set($check1,$check2
, ...), my$check
= in_set($check1,$check2
, ...), not_in_set($check1,$check2
, ...), check$thing
- HASH BUILDER
$check
= hash { ... }, field$NAME
=>$VAL
, field$NAME
=>$CHECK
, all_keys($CHECK1,$CHECK2
, ...), all_vals($CHECK1,$CHECK2
, ...), all_values($CHECK1,$CHECK2
, ...), end(), etc(), DNE()- ARRAY BUILDER
$check
= array { ... }, item$VAL
, item$CHECK
, item$IDX
,$VAL
, item$IDX
,$CHECK
, filter_items { my@remaining
=@_
; ...; return@filtered
}, all_items($CHECK1,$CHECK2
, ...), end(), etc(), DNE()- BAG BUILDER
$check
= bag { ... }, item$VAL
, item$CHECK
, all_items($CHECK1,$CHECK2
, ...), end(), etc()- ORDERED SUBSET BUILDER
$check
= subset { ... }, item$VAL
, item$CHECK
- META BUILDER
meta { ... }, meta_check { ... }, prop
$NAME
=>$VAL
, prop$NAME
=>$CHECK
, 'blessed', 'reftype', 'isa', 'this', 'size'- OBJECT BUILDER
$check
= object { ... }, call$METHOD_NAME
=>$RESULT
, call$METHOD_NAME
=>$CHECK
, call [$METHOD_NAME,@METHOD_ARGS
] =>$RESULT
, call [$METHOD_NAME,@METHOD_ARGS
] =>$CHECK
, call sub { ... },$RESULT
, call sub { ... },$CHECK
, call_list$METHOD_NAME
=>$RESULT
, call_list$METHOD_NAME
=>$CHECK
, call_list [$METHOD_NAME,@METHOD_ARGS
] =>$RESULT
, call_list [$METHOD_NAME,@METHOD_ARGS
] =>$CHECK
, call_list sub { ... },$RESULT
, call_list sub { ... },$CHECK
, call_hash$METHOD_NAME
=>$RESULT
, call_hash$METHOD_NAME
=>$CHECK
, call_hash [$METHOD_NAME,@METHOD_ARGS
] =>$RESULT
, call_hash [$METHOD_NAME,@METHOD_ARGS
] =>$CHECK
, call_hash sub { ... },$RESULT
, call_hash sub { ... },$CHECK
, field$NAME
=>$VAL
, item$VAL
, item$IDX
,$VAL
, prop$NAME
=>$VAL
, prop$NAME
=>$CHECK
, 'blessed', 'reftype', 'isa', 'this', 'size', DNE(), end(), etc()- EVENT BUILDERS
$check
= event$TYPE
;,$check
= event$TYPE
=> sub { ... };,$check
= event$TYPE
=> { ... };, 'file', 'line', 'package', 'subname', 'skip', 'todo', 'trace', 'tid', 'pid',@checks
= fail_events$TYPE
;,@checks
= fail_events$TYPE
=> sub { ... };,@checks
= fail_events$TYPE
=> { ... };
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Defer - Write tests that get executed at a later time
- DESCRIPTION
- SYNOPSIS
- EXPORTS
def function =>
@args
;, do_def()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Encoding - Tools for managing the encoding of Test2 based tests.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
set_encoding($encoding)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Event - Tools for generating test events.
- DESCRIPTION
- EXPORTS
$e
= gen_event($TYPE),$e
= gen_event($TYPE,%FIELDS
),$e
= gen_event 'Ok';,$e
= gen_event Ok => ( ... ),$e
= gen_event '+Test2::Event::Ok' => ( ... )- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Exception - Test2 based tools for checking exceptions
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$e
= dies { ... },$bool
= lives { ... },$bool
= try_ok { ... },$bool
= try_ok { ... } "Test Description"- DIFFERENCES FROM TEST::FATAL
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Exports - Tools for validating exporters.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
imported_ok(@SYMBOLS), not_imported_ok(@SYMBOLS)
- CAVEATS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::GenTemp - Tool for generating a populated temp directory.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
gen_temp(file => 'content', subdir => [ sub_dir_file => 'content', ...], ...), gen_temp(-tempdir => \@TEMPDIR_ARGS, file => 'content', subdir => [ sub_dir_file => 'content', ...], ...)
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Grab - Temporarily intercept all events without adding a scope level.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$grab
= grab()- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Mock - Class/Instance mocking for Test2.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
- DEFAULT
mock,
@mocks
= mocked($object),@mocks
= mocked($class),$mock
= mock$class
=> ( ... );,$mock
= mock$instance
=> ( ... ),$mock
= mock 'class',$class
=> ( ... ),$obj
= mock(),$obj
= mock { ... },$obj
= mock 'obj', ...;, mock$mock
=> sub { ... }, mock$method
=> ( ... )- BY REQUEST
$obj
= mock_obj( ... ),$obj
= mock_obj { ... } => ( ... ),$obj
= mock_obj sub { ... },$obj
= mock_obj { ... } => sub { ... },$mock
= mock_class$class
=> ( ... ),$mock
= mock_class$instance
=> ( ... ),$mock
= mock_class ... => sub { ... }, mock_build$mock
=> sub { ... },$mock
= mock_building(), mock_do$method
=>$args
,$sub
= mock_accessor$field
,$sub
= mock_getter$field
,$sub
= mock_setter$field
,%pairs
= mock_accessors(qw/name1 name2 name3/),%pairs
= mock_getters(qw/name1 name2 name3/),%pairs
= mock_setters(qw/name1 name2 name3/)
- MOCK CONTROL OBJECTS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Ref - Tools for validating references.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
ref_ok($thing), ref_ok($thing,
$type
), ref_ok($thing,$type
,$name
), ref_is($ref1,$ref2
,$name
), ref_is_not($ref1,$ref2
,$name
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Refcount, Test2::Tools::Refcount - assert reference counts on objects
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
- is_refcount
- is_oneref
- refcount
- EXAMPLE
- BUGS
Temporaries created on the stack
ACKNOWLEDGEMENTS
AUTHOR
Test2::Tools::Spec - RSPEC implementation on top of Test2::Workflow
- DESCRIPTION
- SYNOPSIS
- EXPORTS
NAME, PARAMS, flat =>
$bool
, async =>$bool
, iso =>$bool
, todo =>$reason
, skip =>$reason
, CODEREF- ESSENTIALS
tests NAME => sub { ... }, tests NAME => \%params, sub { ... }, tests($NAME, \%PARAMS, \&CODE), it NAME => sub { ... }, it NAME => \%params, sub { ... }, it($NAME, \%PARAMS, \&CODE), case NAME => sub { ... }, case NAME => \%params, sub { ... }, case($NAME, \%PARAMS, \&CODE), before_each NAME => sub { ... }, before_each NAME => \%params, sub { ... }, before_each($NAME, \%PARAMS, \&CODE), before_case NAME => sub { ... }, before_case NAME => \%params, sub { ... }, before_case($NAME, \%PARAMS, \&CODE), before_all NAME => sub { ... }, before_all NAME => \%params, sub { ... }, before_all($NAME, \%PARAMS, \&CODE), around_each NAME => sub { ... }, around_each NAME => \%params, sub { ... }, around_each($NAME, \%PARAMS, \&CODE), around_case NAME => sub { ... }, around_case NAME => \%params, sub { ... }, around_case($NAME, \%PARAMS, \&CODE), around_all NAME => sub { ... }, around_all NAME => \%params, sub { ... }, around_all($NAME, \%PARAMS, \&CODE), after_each NAME => sub { ... }, after_each NAME => \%params, sub { ... }, after_each($NAME, \%PARAMS, \&CODE), after_case NAME => sub { ... }, after_case NAME => \%params, sub { ... }, after_case($NAME, \%PARAMS, \&CODE), after_all NAME => sub { ... }, after_all NAME => \%params, sub { ... }, after_all($NAME, \%PARAMS, \&CODE)
- SHORTCUTS
mini NAME => sub { ... }, iso NAME => sub { ... }, miso NAME => sub { ... }, async NAME => sub { ... }, masync NAME => sub { ... }
CUSTOM ATTRIBUTE DEFAULTS
- EXECUTION ORDER
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Subtest - Tools for writing subtests
- DESCRIPTION
- SYNOPSIS
BUFFERED
STREAMED
- IMPORTANT NOTE
- EXPORTS
subtest_streamed
$name
=>$sub
, subtest_streamed($name,$sub
,@args
), subtest_streamed$name
=> \%params,$sub
, subtest_streamed($name, \%params,$sub
,@args
), subtest_buffered$name
=>$sub
, subtest_buffered($name,$sub
,@args
), subtest_buffered$name
=> \%params,$sub
, subtest_buffered($name, \%params,$sub
,@args
)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Target - Alias the testing target package.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Tester - Tools to help you test other testing tools.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$array_ref
= filter$events
=>$PACKAGE
,$array_ref
= filter$events
=>$PACKAGE1
,$PACKAGE2
,$array_ref
= filter$events
=> qr/match/,$array_ref
= filter$events
=> qr/match/,$PACKAGE
,$grouped
= group_events($events),$arrayref
= facets TYPE =>$events
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Tiny - Tiny set of tools for unfortunate souls who cannot use Test2::Suite.
- DESCRIPTION
- USE Test2::Suite INSTEAD
- EXPORTS
ok($bool,
$name
), ok($bool,$name
,@diag
), is($got,$want
,$name
), is($got,$want
,$name
,@diag
), isnt($got,$do_not_want
,$name
), isnt($got,$do_not_want
,$name
,@diag
), like($got,$regex
,$name
), like($got,$regex
,$name
,@diag
), unlike($got,$regex
,$name
), unlike($got,$regex
,$name
,@diag
), is_deeply($got,$want
,$name
), is_deeply($got,$want
,$name
,@diag
), diag($msg), note($msg), skip_all($reason), todo$reason
=> sub { ... }, plan($count), done_testing(),$warnings
= warnings { ... },$exception
= exception { ... }, tests$name
=> sub { ... },$output
= capture { ... }- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Tools::Warnings - Tools to verify warnings.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$count
= warns { ... },$warning
= warning { ... },$warnings_ref
= warnings { ... },$bool
= no_warnings { ... }- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Transition - Transition notes when upgrading to Test2
- DESCRIPTION
- THINGS THAT BREAK
Test::Builder1.5/2 conditionals
Replacing the Test::Builder singleton
Directly Accessing Hash Elements
Subtest indentation
- DISTRIBUTIONS THAT BREAK OR NEED TO BE UPGRADED
- WORKS BUT TESTS WILL FAIL
Test::DBIx::Class::Schema, Device::Chip
- UPGRADE SUGGESTED
Test::Exception, Data::Peek, circular::require, Test::Module::Used, Test::Moose::More, Test::FITesque, Test::Kit, autouse
- NEED TO UPGRADE
Test::SharedFork, Test::Builder::Clutch, Test::Dist::VersionSync, Test::Modern, Test::UseAllModules, Test::More::Prefix
- STILL BROKEN
Test::Aggregate, Test::Wrapper, Test::ParallelSubtest, Test::Pretty, Net::BitTorrent, Test::Group, Test::Flatten, Log::Dispatch::Config::TestLog, Test::Able
- MAKE ASSERTIONS -> SEND EVENTS
- LEGACY
- TEST2
ok($bool,
$name
), diag(@messages), note(@messages), subtest($name,$code
)
- WRAP EXISTING TOOLS
LEGACY
TEST2
- USING UTF8
LEGACY
TEST2
- AUTHORS, CONTRIBUTORS AND REVIEWERS
Chad Granum (EXODIST) <exodist@cpan.org>
- SOURCE
- MAINTAINER
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util - Tools used by Test2 and friends.
- DESCRIPTION
- EXPORTS
($success,
$error
) = try { ... }, protect { ... }, CAN_FORK, CAN_REALLY_FORK, CAN_THREAD, USE_THREADS, get_tid, my$file
= pkg_to_file($package),$string
= ipc_separator(),$string
= gen_uid(), ($ok,$err
) = do_rename($old_name,$new_name
), ($ok,$err
) = do_unlink($filename), ($ok,$err
) = try_sig_mask { ... }, SIGINT, SIGALRM, SIGHUP, SIGTERM, SIGUSR1, SIGUSR2- NOTES && CAVEATS
Devel::Cover
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Kent Fredric <kentnl@cpan.org>
COPYRIGHT
Test2::Util::ExternalMeta - Allow third party tools to safely attach meta-data to your instances.
- DESCRIPTION
- SYNOPSIS
- WHERE IS THE DATA STORED?
- EXPORTS
$val
=$obj
->meta($key),$val
=$obj
->meta($key,$default
),$val
=$obj
->get_meta($key),$val
=$obj
->delete_meta($key),$obj
->set_meta($key,$val
)- META-KEY RESTRICTIONS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Facets2Legacy - Convert facet data to the legacy event API.
- DESCRIPTION
- SYNOPSIS
AS METHODS
AS FUNCTIONS
- NOTE ON CYCLES
- EXPORTS
$bool
=$e
->causes_fail(),$bool
= causes_fail($f),$bool
=$e
->diagnostics(),$bool
= diagnostics($f),$bool
=$e
->global(),$bool
= global($f),$bool
=$e
->increments_count(),$bool
= increments_count($f),$bool
=$e
->no_display(),$bool
= no_display($f), ($max,$directive
,$reason
) =$e
->sets_plan(), ($max,$directive
,$reason
) = sets_plan($f),$id
=$e
->subtest_id(),$id
= subtest_id($f),$string
=$e
->summary(),$string
= summary($f),$undef_or_int
=$e
->terminate(),$undef_or_int
= terminate($f),$uuid
=$e
->uuid(),$uuid
= uuid($f)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Grabber - Object used to temporarily intercept all events.
- DESCRIPTION
- SYNOPSIS
- EXPORTS
$grab
= grab()- METHODS
$grab
=$class
->new(),$ar
=$grab
->flush(),$ar
=$grab
->events(),$ar
=$grab
->finish(),$hub
=$grab
->hub()- ENDING BEHAVIOR
- SEE ALSO
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Guard - Inline copy of Scope::Guard
- SEE ALSO
- ORIGINAL AUTHOR
chocolateboy <chocolate@cpan.org>
- INLINE AND MODIFICATION AUTHOR
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::HashBase - Build hash based classes.
- SYNOPSIS
- DESCRIPTION
- THIS IS A BUNDLED COPY OF HASHBASE
- METHODS
- PROVIDED BY HASH BASE
$it
=$class
->new(%PAIRS),$it
=$class
->new(\%PAIRS),$it
=$class
->new(\@ORDERED_VALUES)- HOOKS
$self
->init()
- ACCESSORS
- READ/WRITE
foo(), set_foo(), FOO()
- READ ONLY
set_foo()
- DEPRECATED SETTER
set_foo()
NO SETTER
NO READER
CONSTANT ONLY
- SUBCLASSING
- GETTING A LIST OF ATTRIBUTES FOR A CLASS
@list
= Test2::Util::HashBase::attr_list($class),@list
=$class
->Test2::Util::HashBase::attr_list()- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Importer - Inline copy of Importer.
- DESCRIPTION
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Ref - Tools for inspecting or manipulating references.
- DESCRIPTION
- EXPORTS
$type
= rtype($ref),$addr_str
= render_ref($ref)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Kent Fredric <kentnl@cpan.org>
COPYRIGHT
Test2::Util::Stash - Utilities for manipulating stashes and globs.
- DESCRIPTION
- EXPORTS
$stash
= get_stash($package),$sym_spec
= parse_symbol($symbol),$sym_spec
= parse_symbol($symbol,$package
),$glob_ref
= get_glob($symbol),$glob_ref
= get_glob($symbol,$package
),$ref
= get_symbol($symbol),$ref
= get_symbol($symbol,$package
),$ref
= purge_symbol($symbol),$ref
= purge_symbol($symbol,$package
),$sig
= slot_to_sig($slot),$slot
= sig_to_slot($sig)- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Sub - Tools for inspecting and manipulating subs.
- DESCRIPTION
- EXPORTS
$name
= sub_name(\&sub), my$hr
= sub_info(\&code),$info
->{ref} => \&code,$info
->{cobj} =>$cobj
,$info
->{name} => "Some::Mod::code",$info
->{file} => "Some/Mod.pm",$info
->{package} => "Some::Mod",$info
->{start_line} => 22,$info
->{end_line} => 42,$info
->{lines} => [22, 42],$info
->{all_lines} => [23, 25, ..., 39, 41]- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>, Kent Fredric <kentnl@cpan.org>
COPYRIGHT
Test2::Util::Table - Format a header and rows into a table
- DESCRIPTION
- SYNOPSIS
- EXPORTS
- @rows = table(...)
header => [ ... ], rows => [ [...], [...], ... ], collapse =>
$bool
, max_width =>$num
, sanitize =>$bool
, mark_tail =>$bool
my
$cols
= term_size()- NOTE ON UNICODE/WIDE CHARACTERS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Table::LineBreak - Break up lines for use in tables.
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Times - Format timing/benchmark information.
- DESCRIPTION
- EXPORTS
$str
= render_bench($start,$end
,$user
,$system
,$cuser
,$csystem
),$str
= render_bench($start, time(), times())- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Util::Trace - Legacy wrapper fro Test2::EventFacet::Trace.
- DESCRIPTION
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::V0 - 0Th edition of the Test2 recommended bundle.
- DESCRIPTION
- NAMING, USING, DEPENDING
- SYNOPSIS
- RESOLVING CONFLICTS WITH MOOSE
- TAGS
:DEFAULT
- RENAMING ON IMPORT
'!ok', ok => {-as => 'my_ok'}
- PRAGMAS
STRICT
WARNINGS
UTF8
- PLUGINS
SRAND
UTF8
EXIT SUMMARY
- API FUNCTIONS
$ctx
= context(),$events
= intercept { ... }- TOOLS
- TARGET
$CLASS
,$class
= CLASS()- DEFER
def
$func
=>@args
;, do_def()- BASIC
ok($bool,
$name
), ok($bool,$name
,@diag
), pass($name), pass($name,@diag
), fail($name), fail($name,@diag
), diag($message), note($message),$todo
= todo($reason), todo$reason
=> sub { ... }, skip($reason,$count
), plan($count), skip_all($reason), done_testing(), bail_out($reason)- COMPARE
is($got,
$want
,$name
), isnt($got,$do_not_want
,$name
), like($got, qr/match/,$name
), unlike($got, qr/mismatch/,$name
),$check
= match(qr/pattern/),$check
= mismatch(qr/pattern/),$check
= validator(sub { return$bool
}),$check
= hash { ... },$check
= array { ... },$check
= bag { ... },$check
= object { ... },$check
= meta { ... },$check
= number($num),$check
= string($str),$check
= bool($bool),$check
= check_isa($class_name),$check
= in_set(@things),$check
= not_in_set(@things),$check
= check_set(@things),$check
= item($thing),$check
= item($idx =>$thing
),$check
= field($name =>$val
),$check
= call($method =>$expect
),$check
= call_list($method =>$expect
),$check
= call_hash($method =>$expect
),$check
= prop($name =>$expect
),$check
= check($thing),$check
= T(),$check
= F(),$check
= D(),$check
= DF(),$check
= E(),$check
= DNE(),$check
= FDNE(),$check
= U(),$check
= L(),$check
= exact_ref($ref), end(), etc(), filter_items { grep { ... }@_
},$check
= event$type
=> ..,@checks
= fail_events$type
=> ..- CLASSIC COMPARE
cmp_ok($got,
$op
,$want
,$name
)- SUBTEST
subtest
$name
=> sub { ... };- CLASS
can_ok($thing,
@methods
), isa_ok($thing,@classes
), DOES_ok($thing,@roles
)- ENCODING
set_encoding($encoding)
- EXPORTS
imported_ok('function', '$scalar', ...), not_imported_ok('function', '$scalar', ...)
- REF
ref_ok($ref,
$type
), ref_is($got,$want
), ref_is_not($got,$do_not_want
), is_refcount($ref,$count
,$description
), is_oneref($ref,$description
),$count
= refcount($ref)- MOCK
$control
= mock ..,$bool
= mocked($thing)- EXCEPTION
$exception
= dies { ... },$bool
= lives { ... },$bool
= try_ok { ... }- WARNINGS
$count
= warns { ... },$warning
= warning { ... },$warnings_ref
= warnings { ... },$bool
= no_warnings { ... }
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow - A test workflow is a way of structuring tests using composable units.
- DESCRIPTION
- IMPORTANT CONCEPTS
BUILD
RUNNER
TASK
- EXPORTS
$parsed
= parse_args(args => \@args),$parsed
= parse_args(args => \@args, level =>$L
),$parsed
= parse_args(args => \@args, caller => [caller($L)]),$build
= init_root($pkg,%args
),$build
= root_build($pkg),$build
= current_build(),$build
= build($name, \%params, sub { ... })- SEE ALSO
Test2::Tools::Spec
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::BlockBase - Base class for all workflow blocks.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::Build - Represents a build in progress.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::Runner - Runs the workflows.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::Task - Encapsulation of a Task
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::Task::Action - Encapsulation of an action.
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test2::Workflow::Task::Group - Encapsulation of a group (describe).
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::Builder - Backend for building test libraries
- SYNOPSIS
- DESCRIPTION
- Construction
new, create, subtest, name, reset
- Setting up tests
plan, expected_tests, no_plan, done_testing, has_plan, skip_all, exported_to
- Running tests
ok, is_eq, is_num, isnt_eq, isnt_num, like, unlike, cmp_ok
- Other Testing Methods
BAIL_OUT, skip, todo_skip, skip_rest
- Test building utility methods
maybe_regex, is_fh
- Test style
level, use_numbers, no_diag, no_ending, no_header
- Output
diag, note, explain, output, failure_output, todo_output, reset_outputs, carp, croak
- Test Status and Info
no_log_results, current_test, is_passing, summary, details, todo, find_TODO, in_todo, todo_start,
todo_end
, caller- EXIT CODES
- THREADS
- MEMORY
- EXAMPLES
- SEE ALSO
INTERNALS
LEGACY
EXTERNAL
- AUTHORS
- MAINTAINERS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::Builder::Formatter - Test::Builder subclass of Test2::Formatter::TAP
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::Builder::IO::Scalar - A copy of IO::Scalar for Test::Builder
DESCRIPTION
COPYRIGHT and LICENSE
Construction
new [ARGS...]
open [SCALARREF]
opened
close
Input and output
flush
getc
getline
getlines
print ARGS..
read BUF, NBYTES, [OFFSET]
write BUF, NBYTES, [OFFSET]
sysread BUF, LEN, [OFFSET]
syswrite BUF, NBYTES, [OFFSET]
Seeking/telling and other attributes
autoflush
binmode
clearerr
eof
seek OFFSET, WHENCE
sysseek OFFSET, WHENCE
tell
use_RS [YESNO]
setpos POS
getpos
sref
- WARNINGS
- VERSION
- AUTHORS
Primary Maintainer
Principal author
Other contributors
SEE ALSO
Test::Builder::Module - Base class for test modules
- SYNOPSIS
- DESCRIPTION
Importing
Builder
SEE ALSO
Test::Builder::Tester - test testsuites that have been built with Test::Builder
- SYNOPSIS
- DESCRIPTION
- Functions
test_out, test_err
test_fail
test_diag
test_test, title (synonym 'name', 'label'), skip_out, skip_err
line_num
color
- BUGS
- AUTHOR
- MAINTAINERS
Chad Granum <exodist@cpan.org>
NOTES
SEE ALSO
Test::Builder::Tester::Color - turn on colour in Test::Builder::Tester
SYNOPSIS
DESCRIPTION
AUTHOR
BUGS
SEE ALSO
Test::Builder::TodoDiag - Test::Builder subclass of Test2::Event::Diag
- DESCRIPTION
- SYNOPSIS
- SOURCE
- MAINTAINERS
Chad Granum <exodist@cpan.org>
- AUTHORS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::Harness - Run Perl standard test scripts with statistics
- VERSION
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
runtests(
@test_files
)- execute_tests( tests => \@test_files, out => \*FH )
- EXPORT
- ENVIRONMENT VARIABLES THAT TAP::HARNESS::COMPATIBLE SETS
HARNESS_ACTIVE
,HARNESS_VERSION
- ENVIRONMENT VARIABLES THAT AFFECT TEST::HARNESS
HARNESS_PERL_SWITCHES
,HARNESS_TIMER
,HARNESS_VERBOSE
,HARNESS_OPTIONS
,j<n>
,c
,a<file.tgz>
,fPackage-With-Dashes
,HARNESS_SUBCLASS
,HARNESS_SUMMARY_COLOR_SUCCESS
,HARNESS_SUMMARY_COLOR_FAIL
Taint Mode
SEE ALSO
BUGS
AUTHORS
LICENCE AND COPYRIGHT
Test::More - yet another framework for writing test scripts
- SYNOPSIS
- DESCRIPTION
I love it when a plan comes together
done_testing
- Test names
- I'm ok, you're not ok.
ok
is, isnt
like
unlike
cmp_ok
can_ok
isa_ok
new_ok
subtest
pass, fail
- Module tests
require_ok
use_ok
- Complex data structures
is_deeply
- Diagnostics
diag, note
explain
- Conditional tests
SKIP: BLOCK
TODO: BLOCK, todo_skip
When do I use SKIP vs. TODO?
- Test control
BAIL_OUT
- Discouraged comparison functions
eq_array
eq_hash
eq_set
- Extending and Embedding Test::More
builder
- EXIT CODES
- COMPATIBILITY
subtests,
done_testing()
,cmp_ok()
,new_ok() note()
andexplain()
- CAVEATS and NOTES
utf8 / "Wide character in print", Overloaded objects, Threads
- HISTORY
- SEE ALSO
ALTERNATIVES
ADDITIONAL LIBRARIES
OTHER COMPONENTS
BUNDLES
- AUTHORS
- MAINTAINERS
Chad Granum <exodist@cpan.org>
BUGS
SOURCE
COPYRIGHT
Test::Simple - Basic utilities for writing tests.
- SYNOPSIS
- DESCRIPTION
ok
- EXAMPLE
- CAVEATS
- NOTES
- HISTORY
- SEE ALSO
Test::More
- AUTHORS
- MAINTAINERS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::Tester - Ease testing test modules built with Test::Builder
- SYNOPSIS
- DESCRIPTION
- HOW TO USE (THE EASY WAY)
- HOW TO USE (THE HARD WAY)
- TEST RESULTS
ok, actual_ok, name, type, reason, diag, depth
SPACES AND TABS
COLOUR
EXPORTED FUNCTIONS
HOW IT WORKS
CAVEATS
SEE ALSO
AUTHOR
LICENSE
Test::Tester::Capture - Help testing test modules built with Test::Builder
DESCRIPTION
AUTHOR
LICENSE
Test::Tester::CaptureRunner - Help testing test modules built with Test::Builder
DESCRIPTION
AUTHOR
LICENSE
Test::Tutorial - A tutorial about writing really basic tests
- DESCRIPTION
Nuts and bolts of testing.
Where to start?
Names
Test the manual
Sometimes the tests are wrong
Testing lots of values
Informative names
Skipping tests
Todo tests
Testing with taint mode.
- FOOTNOTES
- AUTHORS
- MAINTAINERS
Chad Granum <exodist@cpan.org>
COPYRIGHT
Test::use::ok - Alternative to Test::More::use_ok
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
- MAINTAINER
Chad Granum <exodist@cpan.org>
CC0 1.0 Universal
Text::Abbrev - abbrev - create an abbreviation table from a list
SYNOPSIS
DESCRIPTION
EXAMPLE
Text::Balanced - Extract delimited text sequences from strings.
- SYNOPSIS
- DESCRIPTION
- General Behaviour in List Contexts
[0], [1], [2]
- General Behaviour in Scalar and Void Contexts
- A Note About Prefixes
- Functions
extract_delimited
,extract_bracketed
,extract_variable
, [0], [1], [2],extract_tagged
,reject => $listref
,ignore => $listref
,fail => $str
, [0], [1], [2], [3], [4], [5],gen_extract_tagged
,extract_quotelike
, [0], [1], [2], [3], [4], [5], [6], [7], [8], [9], [10],extract_quotelike
, [0], [1], [2], [3], [4], [5], [6], [7..10],extract_codeblock
,extract_multiple
,gen_delimited_pat
,delimited_pat
- DIAGNOSTICS
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 '%s'>, C<Mismatched closing bracket: expected "%c" but found "%s">, C<No block delimiter found after quotelike "%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>
- EXPORTS
Default Exports, Optional Exports, Export Tags,
:ALL
KNOWN BUGS
FEEDBACK
AVAILABILITY
INSTALLATION
AUTHOR
COPYRIGHT
LICENCE
VERSION
DATE
HISTORY
Text::ParseWords - parse text into an array of tokens or array of arrays
- SYNOPSIS
- DESCRIPTION
true, false,
"delimiters"
- EXAMPLES
0, 1, 2, 3, 4, 5
SEE ALSO
AUTHORS
COPYRIGHT AND LICENSE
Text::Tabs - expand and unexpand tabs like unix expand(1) and unexpand(1)
- SYNOPSIS
- DESCRIPTION
- EXPORTS
expand, unexpand,
$tabstop
EXAMPLE
BUGS
LICENSE
Text::Wrap - line wrapping to form simple paragraphs
SYNOPSIS
DESCRIPTION
OVERRIDES
EXAMPLES
SEE ALSO
AUTHOR
LICENSE
Thread - Manipulate threads in Perl (for old code only)
- DEPRECATED
- HISTORY
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
$thread
= Thread->new(\&start_sub),$thread
= Thread->new(\&start_sub, LIST), lock VARIABLE, async BLOCK;, Thread->self, Thread->list, cond_wait VARIABLE, cond_signal VARIABLE, cond_broadcast VARIABLE, yield- METHODS
join, detach, equal, tid, done
- DEFUNCT
lock(\&sub), eval, flags
SEE ALSO
Thread::Queue - Thread-safe queues
- VERSION
- SYNOPSIS
- DESCRIPTION
Ordinary scalars, Array refs, Hash refs, Scalar refs, Objects based on the above
- QUEUE CREATION
->new(), ->new(LIST)
- BASIC METHODS
->enqueue(LIST), ->dequeue(), ->dequeue(COUNT), ->dequeue_nb(), ->dequeue_nb(COUNT), ->dequeue_timed(TIMEOUT), ->dequeue_timed(TIMEOUT, COUNT), ->pending(), ->limit, ->end()
- ADVANCED METHODS
->peek(), ->peek(INDEX), ->insert(INDEX, LIST), ->extract(), ->extract(INDEX), ->extract(INDEX, COUNT)
NOTES
LIMITATIONS
SEE ALSO
MAINTAINER
LICENSE
Thread::Semaphore - Thread-safe semaphores
- VERSION
- SYNOPSIS
- DESCRIPTION
- METHODS
->new(), ->new(NUMBER), ->down(), ->down(NUMBER), ->down_nb(), ->down_nb(NUMBER), ->down_force(), ->down_force(NUMBER), ->down_timed(TIMEOUT), ->down_timed(TIMEOUT, NUMBER), ->up(), ->up(NUMBER)
NOTES
SEE ALSO
MAINTAINER
LICENSE
Tie::Array - base class for tied arrays
- SYNOPSIS
- DESCRIPTION
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
CAVEATS
AUTHOR
Tie::File - Access the lines of a disk file via a Perl array
- SYNOPSIS
- DESCRIPTION
unicode
recsep
autochomp
mode
memory
dw_size
Option Format
- Public Methods
flock
autochomp
defer
,flush
,discard
, andautodefer
offset
- Tying to an already-opened filehandle
- Deferred Writing
Autodeferring
CONCURRENT ACCESS TO FILES
CAVEATS
SUBCLASSING
WHAT ABOUT DB_File
?
AUTHOR
LICENSE
WARRANTY
THANKS
TODO
Tie::Handle - base class definitions for tied handles
- SYNOPSIS
- DESCRIPTION
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
MORE INFORMATION
COMPATIBILITY
Tie::Hash, Tie::StdHash, Tie::ExtraHash - base class definitions for tied hashes
- SYNOPSIS
- DESCRIPTION
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
Inheriting from Tie::StdHash
Inheriting from Tie::ExtraHash
SCALAR
, UNTIE
and DESTROY
MORE INFORMATION
Tie::Hash::NamedCapture - Named regexp capture buffers
SYNOPSIS
DESCRIPTION
SEE ALSO
Tie::Memoize - add data to hash when needed
SYNOPSIS
DESCRIPTION
Inheriting from Tie::Memoize
EXAMPLE
BUGS
AUTHOR
Tie::RefHash - Use references as hash keys
VERSION
SYNOPSIS
DESCRIPTION
EXAMPLE
THREAD SUPPORT
STORABLE SUPPORT
SEE ALSO
SUPPORT
AUTHORS
CONTRIBUTORS
COPYRIGHT AND LICENCE
Tie::Scalar, Tie::StdScalar - base class definitions for tied scalars
- SYNOPSIS
- DESCRIPTION
TIESCALAR classname, LIST, FETCH this, STORE this, value, DESTROY this
Tie::Scalar vs Tie::StdScalar
MORE INFORMATION
Tie::StdHandle - base class definitions for tied handles
SYNOPSIS
DESCRIPTION
Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
SYNOPSIS
DESCRIPTION
CAVEATS
Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers
- SYNOPSIS
- DESCRIPTION
gettimeofday (), usleep (
$useconds
), nanosleep ($nanoseconds
), ualarm ($useconds
[,$interval_useconds
] ), tv_interval, time (), sleep ($floating_seconds
), alarm ($floating_seconds
[,$interval_floating_seconds
] ), setitimer ($which
,$floating_seconds
[,$interval_floating_seconds
] ), getitimer ($which
), clock_gettime ($which
), clock_getres ($which
), clock_nanosleep ($which
,$nanoseconds
,$flags
= 0), clock(), stat, stat FH, stat EXPR, lstat, lstat FH, lstat EXPR, utime LIST- EXAMPLES
- C API
- DIAGNOSTICS
useconds or interval more than ...
negative time not invented yet
internal error: useconds < 0 (unsigned ... signed ...)
useconds or uinterval equal to or more than 1000000
unimplemented in this platform
CAVEATS
SEE ALSO
AUTHORS
COPYRIGHT AND LICENSE
Time::Local - Efficiently compute time from local and GMT time
- VERSION
- SYNOPSIS
- DESCRIPTION
- FUNCTIONS
timelocal_posix()
andtimegm_posix()
timelocal_modern()
andtimegm_modern()
timelocal()
andtimegm()
timelocal_nocheck()
andtimegm_nocheck()
Year Value Interpretation
Limits of time_t
Ambiguous Local Times (DST)
Non-Existent Local Times (DST)
Negative Epoch Values
IMPLEMENTATION
AUTHORS EMERITUS
BUGS
SOURCE
AUTHOR
CONTRIBUTORS
COPYRIGHT AND LICENSE
Time::Piece - Object Oriented time objects
- SYNOPSIS
- DESCRIPTION
- USAGE
Local Locales
Date Calculations
Truncation
Date Comparisons
Date Parsing
YYYY-MM-DDThh:mm:ss
Week Number
Global Overriding
- CAVEATS
Setting
$ENV
{TZ} in Threads on Win32Use of epoch seconds
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO
BUGS
Time::Seconds - a simple API to convert seconds to other date values
SYNOPSIS
DESCRIPTION
METHODS
AUTHOR
COPYRIGHT AND LICENSE
Bugs
Time::gmtime - by-name interface to Perl's built-in gmtime() function
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Time::localtime - by-name interface to Perl's built-in localtime() function
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
Time::tm - internal object used by Time::gmtime and Time::localtime
SYNOPSIS
DESCRIPTION
AUTHOR
UNIVERSAL - base class for ALL classes (blessed references)
- SYNOPSIS
- DESCRIPTION
$obj->isa( TYPE )
,CLASS->isa( TYPE )
,eval { VAL->isa( TYPE ) }
,TYPE
,$obj
,CLASS
,VAL
,$obj->DOES( ROLE )
,CLASS->DOES( ROLE )
,$obj->can( METHOD )
,CLASS->can( METHOD )
,eval { VAL->can( METHOD ) }
,VERSION ( [ REQUIRE ] )
WARNINGS
EXPORTS
Unicode::Collate - Unicode Collation Algorithm
- SYNOPSIS
- DESCRIPTION
- Constructor and Tailoring
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
- Methods for Collation
@sorted = $Collator->sort(@not_sorted)
,$result = $Collator->cmp($a, $b)
,$result = $Collator->eq($a, $b)
,$result = $Collator->ne($a, $b)
,$result = $Collator->lt($a, $b)
,$result = $Collator->le($a, $b)
,$result = $Collator->gt($a, $b)
,$result = $Collator->ge($a, $b)
,$sortKey = $Collator->getSortKey($string)
,$sortKeyForm = $Collator->viewSortKey($string)
- Methods for Searching
$position = $Collator->index($string, $substring[, $position])
,($position, $length) = $Collator->index($string, $substring[, $position])
,$match_ref = $Collator->match($string, $substring)
,($match) = $Collator->match($string, $substring)
,@match = $Collator->gmatch($string, $substring)
,$count = $Collator->subst($string, $substring, $replacement)
,$count = $Collator->gsubst($string, $substring, $replacement)
- Other Methods
%old_tailoring = $Collator->change(%new_tailoring)
,$modified_collator = $Collator->change(%new_tailoring)
,$version = $Collator->version()
,UCA_Version()
,Base_Unicode_Version()
- EXPORT
- INSTALL
- CAVEATS
Normalization, Conformance Test
- AUTHOR, COPYRIGHT AND LICENSE
- SEE ALSO
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
Unicode::Collate::CJK::Big5 - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::GB2312 - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- CAVEAT
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::JISX0208 - weighting JIS KANJI for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::Korean - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::Pinyin - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- CAVEAT
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::Stroke - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- CAVEAT
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::CJK::Zhuyin - weighting CJK Unified Ideographs for Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- CAVEAT
- SEE ALSO
CLDR - Unicode Common Locale Data Repository, Unicode Locale Data Markup Language (LDML) - UTS #35, Unicode::Collate, Unicode::Collate::Locale
Unicode::Collate::Locale - Linguistic tailoring for DUCET via Unicode::Collate
- SYNOPSIS
- DESCRIPTION
- Constructor
- Methods
$Collator->getlocale
,$Collator->locale_version
A list of tailorable locales
A list of variant codes and their aliases
- INSTALL
- CAVEAT
Tailoring is not maximum, Collation reordering is not supported
Reference
- AUTHOR
- SEE ALSO
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
Unicode::Normalize - Unicode Normalization Forms
- SYNOPSIS
- DESCRIPTION
- Normalization Forms
$NFD_string = NFD($string)
,$NFC_string = NFC($string)
,$NFKD_string = NFKD($string)
,$NFKC_string = NFKC($string)
,$FCD_string = FCD($string)
,$FCC_string = FCC($string)
,$normalized_string = normalize($form_name, $string)
- Decomposition and Composition
$decomposed_string = decompose($string [, $useCompatMapping])
,$reordered_string = reorder($string)
,$composed_string = compose($string)
,($processed, $unprocessed) = splitOnLastStarter($normalized)
,$processed = normalize_partial($form, $unprocessed)
,$processed = NFD_partial($unprocessed)
,$processed = NFC_partial($unprocessed)
,$processed = NFKD_partial($unprocessed)
,$processed = NFKC_partial($unprocessed)
- Quick Check
$result = checkNFD($string)
,$result = checkNFC($string)
,$result = checkNFKD($string)
,$result = checkNFKC($string)
,$result = checkFCD($string)
,$result = checkFCC($string)
,$result = check($form_name, $string)
- Character Data
$canonical_decomposition = getCanon($code_point)
,$compatibility_decomposition = getCompat($code_point)
,$code_point_composite = getComposite($code_point_here, $code_point_next)
,$combining_class = getCombinClass($code_point)
,$may_be_composed_with_prev_char = isComp2nd($code_point)
,$is_exclusion = isExclusion($code_point)
,$is_singleton = isSingleton($code_point)
,$is_non_starter_decomposition = isNonStDecomp($code_point)
,$is_Full_Composition_Exclusion = isComp_Ex($code_point)
,$NFD_is_NO = isNFD_NO($code_point)
,$NFC_is_NO = isNFC_NO($code_point)
,$NFC_is_MAYBE = isNFC_MAYBE($code_point)
,$NFKD_is_NO = isNFKD_NO($code_point)
,$NFKC_is_NO = isNFKC_NO($code_point)
,$NFKC_is_MAYBE = isNFKC_MAYBE($code_point)
- EXPORT
- CAVEATS
Perl's version vs. Unicode version, Correction of decomposition mapping, Revised definition of canonical composition
- AUTHOR
- LICENSE
- SEE ALSO
<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/>
Unicode::UCD - Unicode character database
- SYNOPSIS
- DESCRIPTION
code point argument
- charinfo()
code, name, category, combining, bidi, decomposition, decimal, digit, numeric, mirrored, unicode10, comment, upper, lower, title, block, script
- charprop()
Block, Decomposition_Mapping, Name_Alias, Numeric_Value, Script_Extensions
- charprops_all()
- charblock()
- charscript()
- charblocks()
- charscripts()
- charinrange()
- general_categories()
- bidi_types()
- compexcl()
- casefold()
code, full, simple, mapping, status, * If you use this
I
mapping, * If you exclude thisI
mapping, turkic- all_casefolds()
- casespec()
code, lower, title, upper, condition
- namedseq()
- num()
- prop_aliases()
- prop_values()
- prop_value_aliases()
- prop_invlist()
- prop_invmap()
s
,sl
,correction
,control
,alternate
,figment
,abbreviation
,a
,al
,ae
,ale
,ar
,n
,ad
search_invlist()
Unicode::UCD::UnicodeVersion
Blocks versus Scripts
Matching Scripts and Blocks
Old-style versus new-style block names
Use with older Unicode versions
AUTHOR
User::grent - by-name interface to Perl's built-in getgr*() functions
SYNOPSIS
DESCRIPTION
NOTE
AUTHOR
User::pwent - by-name interface to Perl's built-in getpw*() functions
- SYNOPSIS
- DESCRIPTION
System Specifics
- NOTE
- AUTHOR
- HISTORY
March 18th, 2000
XSLoader - Dynamically load C libraries into Perl code
- VERSION
- SYNOPSIS
- DESCRIPTION
Migration from
DynaLoader
Backward compatible boilerplate
- Order of initialization: early load()
The most hairy case
- DIAGNOSTICS
Can't find '%s' symbol in %s
,Can't load '%s' for module %s: %s
,Undefined symbols present after loading %s: %s
LIMITATIONS
KNOWN BUGS
BUGS
SEE ALSO
AUTHORS
COPYRIGHT & LICENSE
Auxiliary Documentation
Here should be listed all the extra programs' documentation, but they don't all have manual pages yet:
h2ph
h2xs
perlbug
pl2pm
pod2html
pod2man
splain
xsubpp
Author
Larry Wall <larry@wall.org>, with the help of oodles of other folks.