perltoc - perl documentation table of contents

- NAME
- DESCRIPTION
- BASIC DOCUMENTATION
  - perl - The Perl 5 language interpreter
  - perlintro - a brief introduction and overview of Perl
  - perlrun - how to execute the Perl interpreter
  - perlreftut - Mark's very short tutorial about references
  - perldsc - Perl Data Structures Cookbook
  - perllol - Manipulating Arrays of Arrays in Perl
  - perlrequick - Perl regular expressions quick start
  - perlretut - Perl regular expressions tutorial
  - perlootut - Object-Oriented Programming in Perl Tutorial
  - perlperf - Perl Performance and Optimization Techniques
  - perlstyle - Perl style guide
  - perlcheat - Perl 5 Cheat Sheet
  - perltrap - Perl traps for the unwary
  - perldebtut - Perl debugging tutorial
  - perlfaq - Frequently asked questions about Perl
  - 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
  - perlsyn - Perl syntax
  - perldata - Perl data types
  - perlop - Perl operators and precedence
  - perlsub - Perl subroutines
  - perlfunc - Perl builtin functions
  - perlopentut - simple recipes for opening files and pipes in Perl
  - perlpacktut - tutorial on pack and unpack
  - perlpod - the Plain Old Documentation format
  - perlpodspec - Plain Old Documentation: format specification and notes
  - perldocstyle - A style guide for writing Perl's documentation
  - perlpodstyle - Perl POD style guide
  - perldiag - various Perl diagnostics
  - perldeprecation - list Perl deprecations
  - perllexwarn - Perl Lexical Warnings
  - perldebug - Perl debugging
  - perlvar - Perl predefined variables
  - perlre - Perl regular expressions
  - perlrebackslash - Perl Regular Expression Backslash Sequences and Escapes
  - perlrecharclass - Perl Regular Expression Character Classes
  - perlreref - Perl Regular Expressions Reference
  - perlref - Perl references and nested data structures
  - perlform - Perl formats
  - perlobj - Perl object reference
  - perltie - how to hide an object class in a simple variable
  - perldbmfilter - Perl DBM Filters
  - perlipc - Perl interprocess communication (signals, fifos, pipes, safe subprocesses, sockets, and semaphores)
  - perlfork - Perl's fork() emulation
  - perlnumber - semantics of numbers and numeric operations in Perl
  - perlthrtut - Tutorial on threads in Perl
  - perlport - Writing portable Perl
  - perllocale - Perl locale handling (internationalization and localization)
  - perluniintro - Perl Unicode introduction
  - perlunicode - Unicode support in Perl
  - perlunicook - cookbookish examples of handling Unicode in Perl
  - perlunifaq - Perl Unicode FAQ
  - perlunitut - Perl Unicode Tutorial
  - perlebcdic - Considerations for running Perl on EBCDIC platforms
  - perlsec - Perl security
  - perlsecpolicy - Perl security report handling policy
  - perlmod - Perl modules (packages and symbol tables)
  - perlmodlib - constructing new Perl modules and finding existing ones
  - perlmodstyle - Perl module style guide
  - perlmodinstall - Installing CPAN Modules
  - perlnewmod - preparing a new module for distribution
  - perlpragma - how to write a user pragma
  - perlutil - utilities packaged with the Perl distribution
  - perlfilter - Source Filters
  - perldtrace - Perl's support for DTrace
  - perlglossary - Perl Glossary
  - perlembed - how to embed perl in your C program
  - perldebguts - Guts of Perl debugging
  - perlxstut - Tutorial for writing XSUBs
  - perlxs - XS language reference manual
  - perlxstypemap - Perl XS C/Perl type mapping
  - perlclib - Internal replacements for standard C library functions
  - perlguts - Introduction to the Perl API
  - perlcall - Perl calling conventions from C
  - perlmroapi - Perl method resolution plugin interface
  - perlreapi - Perl regular expression plugin interface
  - perlreguts - Description of the Perl regular expression engine.
  - perlapi - autogenerated documentation for the perl public API
  - perlintern - autogenerated documentation of purely internal Perl functions
  - perliol - C API for Perl's implementation of IO in Layers.
  - perlapio - perl's IO abstraction interface.
  - perlhack - How to hack on Perl
  - perlsource - A guide to the Perl source tree
  - perlinterp - An overview of the Perl interpreter
  - perlhacktut - Walk through the creation of a simple C code patch
  - perlhacktips - Tips for Perl core C code hacking
  - perlpolicy - Various and sundry policies and commitments related to the Perl core
  - perlgov - Perl Rules of Governance
  - perlgit - Detailed information about git and the Perl repository
  - perlhist - the Perl history records
  - perldelta - what is new for perl v5.36.0
  - perl5360delta, perldelta - what is new for perl v5.36.0
  - perl5341delta - what is new for perl v5.34.1
  - perl5340delta - what is new for perl v5.34.0
  - perl5321delta - what is new for perl v5.32.1
  - perl5320delta - what is new for perl v5.32.0
  - perl5303delta - what is new for perl v5.30.3
  - perl5302delta - what is new for perl v5.30.2
  - perl5301delta - what is new for perl v5.30.1
  - perl5300delta - what is new for perl v5.30.0
  - perl5283delta - what is new for perl v5.28.3
  - perl5282delta - what is new for perl v5.28.2
  - perl5281delta - what is new for perl v5.28.1
  - perl5280delta - what is new for perl v5.28.0
  - perl5263delta - what is new for perl v5.26.3
  - perl5262delta - what is new for perl v5.26.2
  - perl5261delta - what is new for perl v5.26.1
  - perl5260delta - what is new for perl v5.26.0
  - perl5244delta - what is new for perl v5.24.4
  - perl5243delta - what is new for perl v5.24.3
  - perl5242delta - what is new for perl v5.24.2
  - perl5241delta - what is new for perl v5.24.1
  - perl5240delta - what is new for perl v5.24.0
  - perl5224delta - what is new for perl v5.22.4
  - perl5223delta - what is new for perl v5.22.3
  - perl5222delta - what is new for perl v5.22.2
  - perl5221delta - what is new for perl v5.22.1
  - perl5220delta - what is new for perl v5.22.0
  - perl5203delta - what is new for perl v5.20.3
  - perl5202delta - what is new for perl v5.20.2
  - perl5201delta - what is new for perl v5.20.1
  - perl5200delta - what is new for perl v5.20.0
  - perl5184delta - what is new for perl v5.18.4
  - perl5182delta - what is new for perl v5.18.2
  - perl5181delta - what is new for perl v5.18.1
  - perl5180delta - what is new for perl v5.18.0
  - perl5163delta - what is new for perl v5.16.3
  - perl5162delta - what is new for perl v5.16.2
  - perl5161delta - what is new for perl v5.16.1
  - perl5160delta - what is new for perl v5.16.0
  - perl5144delta - what is new for perl v5.14.4
  - perl5143delta - what is new for perl v5.14.3
  - perl5142delta - what is new for perl v5.14.2
  - perl5141delta - what is new for perl v5.14.1
  - perl5140delta - what is new for perl v5.14.0
  - perl5125delta - what is new for perl v5.12.5
  - perl5124delta - what is new for perl v5.12.4
  - perl5123delta - what is new for perl v5.12.3
  - perl5122delta - what is new for perl v5.12.2
  - perl5121delta - what is new for perl v5.12.1
  - perl5120delta - what is new for perl v5.12.0
  - perl5101delta - what is new for perl v5.10.1
  - perl5100delta - what is new for perl 5.10.0
  - perl589delta - what is new for perl v5.8.9
  - perl588delta - what is new for perl v5.8.8
  - perl587delta - what is new for perl v5.8.7
  - perl586delta - what is new for perl v5.8.6
  - perl585delta - what is new for perl v5.8.5
  - perl584delta - what is new for perl v5.8.4
  - perl583delta - what is new for perl v5.8.3
  - perl582delta - what is new for perl v5.8.2
  - perl581delta - what is new for perl v5.8.1
  - perl58delta - what is new for perl v5.8.0
  - perl561delta - what's new for perl v5.6.1
  - perl56delta - what's new for perl v5.6.0
  - perl5005delta - what's new for perl5.005
  - perl5004delta - what's new for perl5.004
  - perlbook - Books about and related to Perl
  - perlcommunity - a brief overview of the Perl community
  - perldoc - Look up Perl documentation in Pod format.
  - perlexperiment - A listing of experimental features in Perl
  - perlartistic - the Perl Artistic License
  - perlgpl - the GNU General Public License, version 1
  - perlaix - Perl version 5 on IBM AIX (UNIX) systems
  - perlamiga - Perl under AmigaOS 4.1
  - perlandroid - Perl under Android
  - perlbs2000 - building and installing Perl for BS2000.
  - perlcygwin - Perl for Cygwin
  - perlfreebsd - Perl version 5 on FreeBSD systems
  - perlhaiku - Perl version 5.10+ on Haiku
  - perlhpux - Perl version 5 on Hewlett-Packard Unix (HP-UX) systems
  - perlhurd - Perl version 5 on Hurd
  - perlirix - Perl version 5 on Irix systems
  - perllinux - Perl version 5 on Linux systems
  - perlmacosx - Perl under Mac OS X
  - perlopenbsd - Perl version 5 on OpenBSD systems
  - perlos2 - Perl under OS/2, DOS, Win0.3*, Win0.95 and WinNT.
  - perlos390 - building and installing Perl for z/OS (previously called OS/390)
  - perlos400 - Perl version 5 on OS/400
  - perlplan9 - Plan 9-specific documentation for Perl
  - perlqnx - Perl version 5 on QNX
  - perlriscos - Perl version 5 for RISC OS
  - perlsolaris - Perl version 5 on Solaris systems
  - perlsynology - Perl 5 on Synology DSM systems
  - perltru64 - Perl version 5 on Tru64 (formerly known as Digital UNIX formerly known as DEC OSF/1) systems
  - perlvms - VMS-specific documentation for Perl
  - perlvos - Perl for Stratus OpenVOS
  - perlwin32 - Perl under Windows
  - perlboot - Links to information on object-oriented programming in Perl
  - perlbot - Links to information on object-oriented programming in Perl
  - perlrepository - Links to current information on the Perl source repository
  - perltodo - Link to the Perl to-do list
  - perltooc - Links to information on object-oriented programming in Perl
  - perltoot - Links to information on object-oriented programming in Perl
- PRAGMA DOCUMENTATION
  - attributes - get/set subroutine or variable attributes
  - autodie - Replace functions with ones that succeed or die with lexical scope
  - autodie::Scope::Guard - Wrapper class for calling subs at end of scope
  - autodie::Scope::GuardStack - Hook stack for managing scopes via %^H
  - autodie::Util - Internal Utility subroutines for autodie and Fatal
  - autodie::exception - Exceptions from autodying functions.
  - autodie::exception::system - Exceptions from autodying system().
  - autodie::hints - Provide hints about user subroutines to autodie
  - autodie::skip - Skip a package when throwing autodie exceptions
  - autouse - postpone load of modules until a function is used
  - base - Establish an ISA relationship with base classes at compile time
  - bigfloat - transparent big floating point number support for Perl
  - bigint - transparent big integer support for Perl
  - bignum - transparent big number support for Perl
  - bigrat - transparent big rational number support for Perl
  - blib - Use MakeMaker's uninstalled version of a package
  - builtin - Perl pragma to import built-in utility functions
  - bytes - Perl pragma to expose the individual bytes of characters
  - charnames - access to Unicode character names and named character sequences; also define character names
  - constant - Perl pragma to declare constants
  - deprecate - Perl pragma for deprecating the inclusion of a module in core
  - diagnostics, splain - produce verbose warning diagnostics
  - encoding - allows you to write your script in non-ASCII and non-UTF-8
  - encoding::warnings - Warn on implicit encoding conversions
  - experimental - Experimental features made easy
  - feature - Perl pragma to enable new features
  - fields - compile-time class fields
  - filetest - Perl pragma to control the filetest permission operators
  - if - use a Perl module if a condition holds
  - integer - Perl pragma to use integer arithmetic instead of floating point
  - less - perl pragma to request less of something
  - locale - Perl pragma to use or avoid POSIX locales for built-in operations
  - mro - Method Resolution Order
  - ok - Alternative to Test::More::use_ok
  - open - perl pragma to set default PerlIO layers for input and output
  - ops - Perl pragma to restrict unsafe operations when compiling
  - overload - Package for overloading Perl operations
  - overloading - perl pragma to lexically control overloading
  - parent - Establish an ISA relationship with base classes at compile time
  - re - Perl pragma to alter regular expression behaviour
  - sigtrap - Perl pragma to enable simple signal handling
  - sort - perl pragma to control sort() behaviour
  - strict - Perl pragma to restrict unsafe constructs
  - subs - Perl pragma to predeclare subroutine names
  - threads - Perl interpreter-based threads
  - threads::shared - Perl extension for sharing data structures between threads
  - utf8 - Perl pragma to enable/disable UTF-8 (or UTF-EBCDIC) in source code
  - vars - Perl pragma to predeclare global variable names
  - version - Perl extension for Version Objects
  - version::Internals - Perl extension for Version Objects
  - vmsish - Perl pragma to control VMS-specific language features
  - warnings - Perl pragma to control optional warnings
  - warnings::register - warnings import function
- MODULE DOCUMENTATION
  - AnyDBM_File - provide framework for multiple DBMs
  - App::Cpan - easily interact with CPAN from the command line
  - App::Prove - Implements the prove command.
  - App::Prove::State - State storage for the prove command.
  - App::Prove::State::Result - Individual test suite results.
  - App::Prove::State::Result::Test - Individual test results.
  - Archive::Tar - module for manipulations of tar archives
  - Archive::Tar::File - a subclass for in-memory extracted file from Archive::Tar
  - Attribute::Handlers - Simpler definition of attribute handlers
  - AutoLoader - load subroutines only on demand
  - AutoSplit - split a package for autoloading
  - B - The Perl Compiler Backend
  - B::Concise - Walk Perl syntax tree, printing concise info about ops
  - B::Deparse - Perl compiler backend to produce perl code
  - B::Op_private - OP op_private flag definitions
  - B::Showlex - Show lexical variables used in functions or files
  - B::Terse - Walk Perl syntax tree, printing terse info about ops
  - B::Xref - Generates cross reference reports for Perl programs
  - Benchmark - benchmark running times of Perl code
  - CORE - Namespace for Perl's core routines
  - CPAN - query, download and build perl modules from CPAN sites
  - CPAN::API::HOWTO - a recipe book for programming with CPAN.pm
  - CPAN::Debug - internal debugging for CPAN.pm
  - CPAN::Distroprefs -- read and match distroprefs
  - CPAN::FirstTime - Utility for CPAN::Config file Initialization
  - CPAN::HandleConfig - internal configuration handling for CPAN.pm
  - CPAN::Kwalify - Interface between CPAN.pm and Kwalify.pm
  - CPAN::Meta - the distribution metadata for a CPAN dist
  - CPAN::Meta::Converter - Convert CPAN distribution metadata structures
  - CPAN::Meta::Feature - an optional feature provided by a CPAN distribution
  - CPAN::Meta::History - history of CPAN Meta Spec changes
  - CPAN::Meta::History::Meta_1_0 - Version 1.0 metadata specification for META.yml
  - CPAN::Meta::History::Meta_1_1 - Version 1.1 metadata specification for META.yml
  - CPAN::Meta::History::Meta_1_2 - Version 1.2 metadata specification for META.yml
  - CPAN::Meta::History::Meta_1_3 - Version 1.3 metadata specification for META.yml
  - CPAN::Meta::History::Meta_1_4 - Version 1.4 metadata specification for META.yml
  - CPAN::Meta::Merge - Merging CPAN Meta fragments
  - CPAN::Meta::Prereqs - a set of distribution prerequisites by phase and type
  - CPAN::Meta::Requirements - a set of version requirements for a CPAN dist
  - CPAN::Meta::Spec - specification for CPAN distribution metadata
  - CPAN::Meta::Validator - validate CPAN distribution metadata structures
  - CPAN::Meta::YAML - Read and write a subset of YAML for CPAN Meta files
  - CPAN::Nox - Wrapper around CPAN.pm without using any XS module
  - CPAN::Plugin - Base class for CPAN shell extensions
  - CPAN::Plugin::Specfile - Proof of concept implementation of a trivial CPAN::Plugin
  - CPAN::Queue - internal queue support for CPAN.pm
  - CPAN::Tarzip - internal handling of tar archives for CPAN.pm
  - CPAN::Version - utility functions to compare CPAN versions
  - Carp - alternative warn and die for modules
  - Class::Struct - declare struct-like datatypes as Perl classes
  - Compress::Raw::Bzip2 - Low-Level Interface to bzip2 compression library
  - Compress::Raw::Zlib - Low-Level Interface to zlib compression library
  - Compress::Zlib - Interface to zlib compression library
  - Config, =for comment Generated by configpm. Any changes made here will be lost!
  - Config::Extensions - hash lookup of which core extensions were built.
  - Config::Perl::V - Structured data retrieval of perl -V output
  - Cwd - get pathname of current working directory
  - DB - programmatic interface to the Perl debugging API
  - DBM_Filter -- Filter DBM keys/values
  - DBM_Filter::compress - filter for DBM_Filter
  - DBM_Filter::encode - filter for DBM_Filter
  - DBM_Filter::int32 - filter for DBM_Filter
  - DBM_Filter::null - filter for DBM_Filter
  - DBM_Filter::utf8 - filter for DBM_Filter
  - Data::Dumper - stringified perl data structures, suitable for both printing and eval
  - Devel::Peek - A data debugging tool for the XS programmer
  - Devel::SelfStubber - generate stubs for a SelfLoading module
  - Digest - Modules that calculate message digests
  - Digest::MD5 - Perl interface to the MD5 Algorithm
  - Digest::SHA - Perl extension for SHA-1/224/256/384/512
  - Digest::base - Digest base class
  - Digest::file - Calculate digests of files
  - DirHandle - (obsolete) supply object methods for directory handles
  - Dumpvalue - provides screen dump of Perl data.
  - Encode - character encodings in Perl
  - Encode::Alias - alias definitions to encodings
  - Encode::Byte - Single Byte Encodings
  - Encode::CJKConstants -- Internally used by Encode::??::ISO_2022_*
  - Encode::CN - China-based Chinese Encodings
  - Encode::CN::HZ -- internally used by Encode::CN
  - Encode::Config -- internally used by Encode
  - Encode::EBCDIC - EBCDIC Encodings
  - Encode::Encoder -- Object Oriented Encoder
  - Encode::Encoding - Encode Implementation Base Class
  - Encode::GSM0338 -- ETSI GSM 03.38 Encoding
  - Encode::Guess -- Guesses encoding from data
  - Encode::JP - Japanese Encodings
  - Encode::JP::H2Z -- internally used by Encode::JP::2022_JP*
  - Encode::JP::JIS7 -- internally used by Encode::JP
  - Encode::KR - Korean Encodings
  - Encode::KR::2022_KR -- internally used by Encode::KR
  - Encode::MIME::Header -- MIME encoding for an unstructured email header
  - Encode::MIME::Name, Encode::MIME::NAME -- internally used by Encode
  - Encode::PerlIO -- a detailed document on Encode and PerlIO
  - Encode::Supported -- Encodings supported by Encode
  - Encode::Symbol - Symbol Encodings
  - Encode::TW - Taiwan-based Chinese Encodings
  - Encode::Unicode -- Various Unicode Transformation Formats
  - Encode::Unicode::UTF7 -- UTF-7 encoding
  - English - use nice English (or awk) names for ugly punctuation variables
  - Env - perl module that imports environment variables as scalars or arrays
  - Exporter - Implements default import method for modules
  - Exporter::Heavy - Exporter guts
  - ExtUtils::CBuilder - Compile and link C code for Perl modules
  - ExtUtils::CBuilder::Platform::Windows - Builder class for Windows platforms
  - ExtUtils::Command - utilities to replace common UNIX commands in Makefiles etc.
  - ExtUtils::Command::MM - Commands for the MM's to use in Makefiles
  - ExtUtils::Constant - generate XS code to import C header constants
  - ExtUtils::Constant::Base - base class for ExtUtils::Constant objects
  - ExtUtils::Constant::Utils - helper functions for ExtUtils::Constant
  - ExtUtils::Constant::XS - generate C code for XS modules' constants.
  - ExtUtils::Embed - Utilities for embedding Perl in C/C++ applications
  - ExtUtils::Install - install files from here to there
  - ExtUtils::Installed - Inventory management of installed modules
  - ExtUtils::Liblist - determine libraries to use and how to use them
  - ExtUtils::MM - OS adjusted ExtUtils::MakeMaker subclass
  - ExtUtils::MM_AIX - AIX specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_Any - Platform-agnostic MM methods
  - ExtUtils::MM_BeOS - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_Cygwin - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_DOS - DOS specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_Darwin - special behaviors for OS X
  - ExtUtils::MM_MacOS - once produced Makefiles for MacOS Classic
  - ExtUtils::MM_NW5 - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_OS2 - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_OS390 - OS390 specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_QNX - QNX specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_UWIN - U/WIN specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_Unix - methods used by ExtUtils::MakeMaker
  - ExtUtils::MM_VMS - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_VOS - VOS specific subclass of ExtUtils::MM_Unix
  - ExtUtils::MM_Win32 - methods to override UN*X behaviour in ExtUtils::MakeMaker
  - ExtUtils::MM_Win95 - method to customize MakeMaker for Win9X
  - ExtUtils::MY - ExtUtils::MakeMaker subclass for customization
  - ExtUtils::MakeMaker - Create a module Makefile
  - ExtUtils::MakeMaker::Config - Wrapper around Config.pm
  - ExtUtils::MakeMaker::FAQ - Frequently Asked Questions About MakeMaker
  - ExtUtils::MakeMaker::Locale - bundled Encode::Locale
  - ExtUtils::MakeMaker::Tutorial - Writing a module with MakeMaker
  - ExtUtils::Manifest - Utilities to write and check a MANIFEST file
  - ExtUtils::Miniperl - write the C code for miniperlmain.c and perlmain.c
  - ExtUtils::Mkbootstrap - make a bootstrap file for use by DynaLoader
  - ExtUtils::Mksymlists - write linker options files for dynamic extension
  - ExtUtils::PL2Bat - Batch file creation to run perl scripts on Windows
  - ExtUtils::Packlist - manage .packlist files
  - ExtUtils::ParseXS - converts Perl XS code into C code
  - ExtUtils::ParseXS::Constants - Initialization values for some globals
  - ExtUtils::ParseXS::Eval - Clean package to evaluate code in
  - ExtUtils::ParseXS::Utilities - Subroutines used with ExtUtils::ParseXS
  - ExtUtils::Typemaps - Read/Write/Modify Perl/XS typemap files
  - ExtUtils::Typemaps::Cmd - Quick commands for handling typemaps
  - ExtUtils::Typemaps::InputMap - Entry in the INPUT section of a typemap
  - ExtUtils::Typemaps::OutputMap - Entry in the OUTPUT section of a typemap
  - ExtUtils::Typemaps::Type - Entry in the TYPEMAP section of a typemap
  - ExtUtils::testlib - add blib/* directories to @INC
  - Fatal - Replace functions with equivalents which succeed or die
  - Fcntl - load the C Fcntl.h defines
  - File::Basename - Parse file paths into directory, filename and suffix.
  - File::Compare - Compare files or filehandles
  - File::Copy - Copy files or filehandles
  - File::DosGlob - DOS like globbing and then some
  - File::Fetch - A generic file fetching mechanism
  - File::Find - Traverse a directory tree.
  - File::Glob - Perl extension for BSD glob routine
  - File::GlobMapper - Extend File Glob to Allow Input and Output Files
  - File::Path - Create or remove directory trees
  - File::Spec - portably perform operations on file names
  - File::Spec::AmigaOS - File::Spec for AmigaOS
  - File::Spec::Cygwin - methods for Cygwin file specs
  - File::Spec::Epoc - methods for Epoc file specs
  - File::Spec::Functions - portably perform operations on file names
  - File::Spec::Mac - File::Spec for Mac OS (Classic)
  - File::Spec::OS2 - methods for OS/2 file specs
  - File::Spec::Unix - File::Spec for Unix, base for other File::Spec modules
  - File::Spec::VMS - methods for VMS file specs
  - File::Spec::Win32 - methods for Win32 file specs
  - File::Temp - return name and handle of a temporary file safely
  - File::stat - by-name interface to Perl's built-in stat() functions
  - FileCache - keep more files open than the system permits
  - FileHandle - supply object methods for filehandles
  - Filter::Simple - Simplified source filtering
  - Filter::Util::Call - Perl Source Filter Utility Module
  - FindBin - Locate directory of original perl script
  - Getopt::Long - Extended processing of command line options
  - Getopt::Std - Process single-character switches with switch clustering
  - HTTP::Tiny - A small, simple, correct HTTP/1.1 client
  - Hash::Util - A selection of general-utility hash subroutines
  - Hash::Util::FieldHash - Support for Inside-Out Classes
  - I18N::Collate - compare 8-bit scalar data according to the current locale
  - I18N::LangTags - functions for dealing with RFC3066-style language tags
  - I18N::LangTags::Detect - detect the user's language preferences
  - I18N::LangTags::List -- tags and names for human languages
  - I18N::Langinfo - query locale information
  - IO - load various IO modules
  - IO::Compress::Base - Base Class for IO::Compress modules
  - IO::Compress::Bzip2 - Write bzip2 files/buffers
  - IO::Compress::Deflate - Write RFC 1950 files/buffers
  - IO::Compress::FAQ -- Frequently Asked Questions about IO::Compress
  - IO::Compress::Gzip - Write RFC 1952 files/buffers
  - IO::Compress::RawDeflate - Write RFC 1951 files/buffers
  - IO::Compress::Zip - Write zip files/buffers
  - IO::Dir - supply object methods for directory handles
  - IO::File - supply object methods for filehandles
  - IO::Handle - supply object methods for I/O handles
  - IO::Pipe - supply object methods for pipes
  - IO::Poll - Object interface to system poll call
  - IO::Seekable - supply seek based methods for I/O objects
  - IO::Select - OO interface to the select system call
  - IO::Socket - Object interface to socket communications
  - IO::Socket::INET - Object interface for AF_INET domain sockets
  - IO::Socket::IP, IO::Socket::IP - Family-neutral IP socket supporting both IPv4 and IPv6
  - IO::Socket::UNIX - Object interface for AF_UNIX domain sockets
  - IO::Uncompress::AnyInflate - Uncompress zlib-based (zip, gzip) file/buffer
  - IO::Uncompress::AnyUncompress - Uncompress gzip, zip, bzip2, zstd, xz, lzma, lzip, lzf or lzop file/buffer
  - IO::Uncompress::Base - Base Class for IO::Uncompress modules
  - IO::Uncompress::Bunzip2 - Read bzip2 files/buffers
  - IO::Uncompress::Gunzip - Read RFC 1952 files/buffers
  - IO::Uncompress::Inflate - Read RFC 1950 files/buffers
  - IO::Uncompress::RawInflate - Read RFC 1951 files/buffers
  - IO::Uncompress::Unzip - Read zip files/buffers
  - IO::Zlib - IO:: style interface to Compress::Zlib
  - IPC::Cmd - finding and running system commands made easy
  - IPC::Open2 - open a process for both reading and writing using open2()
  - IPC::Open3 - open a process for reading, writing, and error handling using open3()
  - Internals - Reserved special namespace for internals related functions
  - JSON::PP - JSON::XS compatible pure-Perl module.
  - JSON::PP::Boolean - dummy module providing JSON::PP::Boolean
  - List::Util - A selection of general-utility list subroutines
  - List::Util::XS - Indicate if List::Util was compiled with a C compiler
  - Locale::Maketext - framework for localization
  - Locale::Maketext::Cookbook - recipes for using Locale::Maketext
  - Locale::Maketext::Guts - Deprecated module to load Locale::Maketext utf8 code
  - Locale::Maketext::GutsLoader - Deprecated module to load Locale::Maketext utf8 code
  - Locale::Maketext::Simple - Simple interface to Locale::Maketext::Lexicon
  - Locale::Maketext::TPJ13 -- article about software localization
  - MIME::Base64 - Encoding and decoding of base64 strings
  - MIME::QuotedPrint - Encoding and decoding of quoted-printable strings
  - Math::BigFloat - arbitrary size floating point math package
  - Math::BigInt - arbitrary size integer math package
  - Math::BigInt::Calc - pure Perl module to support Math::BigInt
  - Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed
  - Math::BigInt::Lib - virtual parent class for Math::BigInt libraries
  - Math::BigRat - arbitrary size rational number math package
  - Math::Complex - complex numbers and associated mathematical functions
  - Math::Trig - trigonometric functions
  - Memoize - Make functions faster by trading space for time
  - Memoize::AnyDBM_File - glue to provide EXISTS for AnyDBM_File for Storable use
  - Memoize::Expire - Plug-in module for automatic expiration of memoized values
  - Memoize::ExpireFile - test for Memoize expiration semantics
  - Memoize::ExpireTest - test for Memoize expiration semantics
  - Memoize::NDBM_File - glue to provide EXISTS for NDBM_File for Storable use
  - Memoize::SDBM_File - glue to provide EXISTS for SDBM_File for Storable use
  - Memoize::Storable - store Memoized data in Storable database
  - Module::CoreList - what modules shipped with versions of perl
  - Module::CoreList::Utils - what utilities shipped with versions of perl
  - Module::Load - runtime require of both modules and files
  - Module::Load::Conditional - Looking up module information / loading at runtime
  - Module::Loaded - mark modules as loaded or unloaded
  - Module::Metadata - Gather package and POD information from perl module files
  - NEXT - Provide a pseudo-class NEXT (et al) that allows method redispatch
  - Net::Cmd - Network Command class (as used by FTP, SMTP etc)
  - Net::Config - Local configuration data for libnet
  - Net::Domain - Attempt to evaluate the current host's internet name and domain
  - Net::FTP - FTP Client class
  - Net::NNTP - NNTP Client class
  - Net::Netrc - OO interface to users netrc file
  - Net::POP3 - Post Office Protocol 3 Client class (RFC1939)
  - Net::Ping - check a remote host for reachability
  - Net::SMTP - Simple Mail Transfer Protocol Client
  - Net::Time - time and daytime network client interface
  - Net::hostent - by-name interface to Perl's built-in gethost*() functions
  - Net::libnetFAQ, libnetFAQ - libnet Frequently Asked Questions
  - Net::netent - by-name interface to Perl's built-in getnet*() functions
  - Net::protoent - by-name interface to Perl's built-in getproto*() functions
  - Net::servent - by-name interface to Perl's built-in getserv*() functions
  - O - Generic interface to Perl Compiler backends
  - Opcode - Disable named opcodes when compiling perl code
  - POSIX - Perl interface to IEEE Std 1003.1
  - Params::Check - A generic input parsing/checking mechanism.
  - Parse::CPAN::Meta - Parse META.yml and META.json CPAN metadata files
  - Perl::OSType - Map Perl operating system names to generic types
  - PerlIO - On demand loader for PerlIO layers and root of PerlIO::* name space
  - PerlIO::encoding - encoding layer
  - PerlIO::mmap - Memory mapped IO
  - PerlIO::scalar - in-memory IO, scalar IO
  - PerlIO::via - Helper class for PerlIO layers implemented in perl
  - PerlIO::via::QuotedPrint - PerlIO layer for quoted-printable strings
  - Pod::Checker - check pod documents for syntax errors
  - Pod::Escapes - for resolving Pod E<...> sequences
  - Pod::Html - module to convert pod files to HTML
  - Pod::Html::Util - helper functions for Pod-Html
  - Pod::Man - Convert POD data to formatted *roff input
  - Pod::ParseLink - Parse an L<> formatting code in POD text
  - Pod::Perldoc - Look up Perl documentation in Pod format.
  - Pod::Perldoc::BaseTo - Base for Pod::Perldoc formatters
  - Pod::Perldoc::GetOptsOO - Customized option parser for Pod::Perldoc
  - Pod::Perldoc::ToANSI - render Pod with ANSI color escapes
  - Pod::Perldoc::ToChecker - let Perldoc check Pod for errors
  - Pod::Perldoc::ToMan - let Perldoc render Pod as man pages
  - Pod::Perldoc::ToNroff - let Perldoc convert Pod to nroff
  - Pod::Perldoc::ToPod - let Perldoc render Pod as ... Pod!
  - Pod::Perldoc::ToRtf - let Perldoc render Pod as RTF
  - Pod::Perldoc::ToTerm - render Pod with terminal escapes
  - Pod::Perldoc::ToText - let Perldoc render Pod as plaintext
  - Pod::Perldoc::ToTk - let Perldoc use Tk::Pod to render Pod
  - Pod::Perldoc::ToXml - let Perldoc render Pod as XML
  - Pod::Simple - framework for parsing Pod
  - Pod::Simple::Checker -- check the Pod syntax of a document
  - Pod::Simple::Debug -- put Pod::Simple into trace/debug mode
  - Pod::Simple::DumpAsText -- dump Pod-parsing events as text
  - Pod::Simple::DumpAsXML -- turn Pod into XML
  - Pod::Simple::HTML - convert Pod to HTML
  - Pod::Simple::HTMLBatch - convert several Pod files to several HTML files
  - Pod::Simple::JustPod -- just the Pod, the whole Pod, and nothing but the Pod
  - Pod::Simple::LinkSection -- represent "section" attributes of L codes
  - Pod::Simple::Methody -- turn Pod::Simple events into method calls
  - Pod::Simple::PullParser -- a pull-parser interface to parsing Pod
  - Pod::Simple::PullParserEndToken -- end-tokens from Pod::Simple::PullParser
  - Pod::Simple::PullParserStartToken -- start-tokens from Pod::Simple::PullParser
  - Pod::Simple::PullParserTextToken -- text-tokens from Pod::Simple::PullParser
  - Pod::Simple::PullParserToken -- tokens from Pod::Simple::PullParser
  - Pod::Simple::RTF -- format Pod as RTF
  - Pod::Simple::Search - find POD documents in directory trees
  - Pod::Simple::SimpleTree -- parse Pod into a simple parse tree
  - Pod::Simple::Subclassing -- write a formatter as a Pod::Simple subclass
  - Pod::Simple::Text -- format Pod as plaintext
  - Pod::Simple::TextContent -- get the text content of Pod
  - Pod::Simple::XHTML -- format Pod as validating XHTML
  - Pod::Simple::XMLOutStream -- turn Pod into XML
  - Pod::Text - Convert POD data to formatted text
  - Pod::Text::Color - Convert POD data to formatted color ASCII text
  - Pod::Text::Overstrike - Convert POD data to formatted overstrike text
  - Pod::Text::Termcap - Convert POD data to ASCII text with format escapes
  - Pod::Usage - extracts POD documentation and shows usage information
  - SDBM_File - Tied access to sdbm files
  - Safe - Compile and execute code in restricted compartments
  - Scalar::Util - A selection of general-utility scalar subroutines
  - Search::Dict - look - search for key in dictionary file
  - SelectSaver - save and restore selected file handle
  - SelfLoader - load functions only on demand
  - Socket, Socket - networking constants and support functions
  - Storable - persistence for Perl data structures
  - Sub::Util - A selection of utility subroutines for subs and CODE references
  - Symbol - manipulate Perl symbols and their names
  - Sys::Hostname - Try every conceivable way to get hostname
  - TAP::Base - Base class that provides common functionality to TAP::Parser and TAP::Harness
  - TAP::Formatter::Base - Base class for harness output delegates
  - TAP::Formatter::Color - Run Perl test scripts with color
  - TAP::Formatter::Console - Harness output delegate for default console output
  - TAP::Formatter::Console::ParallelSession - Harness output delegate for parallel console output
  - TAP::Formatter::Console::Session - Harness output delegate for default console output
  - TAP::Formatter::File - Harness output delegate for file output
  - TAP::Formatter::File::Session - Harness output delegate for file output
  - TAP::Formatter::Session - Abstract base class for harness output delegate
  - TAP::Harness - Run test scripts with statistics
  - TAP::Harness::Beyond, Test::Harness::Beyond - Beyond make test
  - TAP::Harness::Env - Parsing harness related environmental variables where appropriate
  - TAP::Object - Base class that provides common functionality to all TAP::* modules
  - TAP::Parser - Parse TAP output
  - TAP::Parser::Aggregator - Aggregate TAP::Parser results
  - TAP::Parser::Grammar - A grammar for the Test Anything Protocol.
  - TAP::Parser::Iterator - Base class for TAP source iterators
  - TAP::Parser::Iterator::Array - Iterator for array-based TAP sources
  - TAP::Parser::Iterator::Process - Iterator for process-based TAP sources
  - TAP::Parser::Iterator::Stream - Iterator for filehandle-based TAP sources
  - TAP::Parser::IteratorFactory - Figures out which SourceHandler objects to use for a given Source
  - TAP::Parser::Multiplexer - Multiplex multiple TAP::Parsers
  - TAP::Parser::Result - Base class for TAP::Parser output objects
  - TAP::Parser::Result::Bailout - Bailout result token.
  - TAP::Parser::Result::Comment - Comment result token.
  - TAP::Parser::Result::Plan - Plan result token.
  - TAP::Parser::Result::Pragma - TAP pragma token.
  - TAP::Parser::Result::Test - Test result token.
  - TAP::Parser::Result::Unknown - Unknown result token.
  - TAP::Parser::Result::Version - TAP syntax version token.
  - TAP::Parser::Result::YAML - YAML result token.
  - TAP::Parser::ResultFactory - Factory for creating TAP::Parser output objects
  - TAP::Parser::Scheduler - Schedule tests during parallel testing
  - TAP::Parser::Scheduler::Job - A single testing job.
  - TAP::Parser::Scheduler::Spinner - A no-op job.
  - TAP::Parser::Source - a TAP source & meta data about it
  - TAP::Parser::SourceHandler - Base class for different TAP source handlers
  - TAP::Parser::SourceHandler::Executable - Stream output from an executable TAP source
  - TAP::Parser::SourceHandler::File - Stream TAP from a text file.
  - TAP::Parser::SourceHandler::Handle - Stream TAP from an IO::Handle or a GLOB.
  - TAP::Parser::SourceHandler::Perl - Stream TAP from a Perl executable
  - TAP::Parser::SourceHandler::RawTAP - Stream output from raw TAP in a scalar/array ref.
  - TAP::Parser::YAMLish::Reader - Read YAMLish data from iterator
  - TAP::Parser::YAMLish::Writer - Write YAMLish data
  - Term::ANSIColor - Color screen output using ANSI escape sequences
  - Term::Cap - Perl termcap interface
  - Term::Complete - Perl word completion module
  - Term::ReadLine - Perl interface to various readline packages. If no real package is found, substitutes stubs instead of basic functions.
  - Test - provides a simple framework for writing test scripts
  - Test2 - Framework for writing test tools that all work together.
  - 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::API - Primary interface for writing Test2 based testing tools.
  - Test2::API::Breakage - What breaks at what version
  - Test2::API::Context - Object to represent a testing context.
  - Test2::API::Instance - Object used by Test2::API under the hood
  - Test2::API::InterceptResult - Representation of a list of events.
  - Test2::API::InterceptResult::Event - Representation of an event for use in testing other test tools.
  - Test2::API::InterceptResult::Hub - Hub used by InterceptResult.
  - Test2::API::InterceptResult::Squasher - Encapsulation of the algorithm that squashes diags into assertions.
  - Test2::API::Stack - Object to manage a stack of Test2::Hub instances.
  - Test2::Event - Base class for events
  - Test2::Event::Bail - Bailout!
  - Test2::Event::Diag - Diag event type
  - Test2::Event::Encoding - Set the encoding for the output stream
  - Test2::Event::Exception - Exception event
  - Test2::Event::Fail - Event for a simple failed assertion
  - Test2::Event::Generic - Generic event type.
  - Test2::Event::Note - Note event type
  - Test2::Event::Ok - Ok event type
  - Test2::Event::Pass - Event for a simple passing assertion
  - Test2::Event::Plan - The event of a plan
  - Test2::Event::Skip - Skip event type
  - Test2::Event::Subtest - Event for subtest types
  - Test2::Event::TAP::Version - Event for TAP version.
  - Test2::Event::V2 - Second generation event.
  - Test2::Event::Waiting - Tell all procs/threads it is time to be done
  - Test2::EventFacet - Base class for all event facets.
  - Test2::EventFacet::About - Facet with event details.
  - Test2::EventFacet::Amnesty - Facet for assertion amnesty.
  - Test2::EventFacet::Assert - Facet representing an assertion.
  - Test2::EventFacet::Control - Facet for hub actions and behaviors.
  - Test2::EventFacet::Error - Facet for errors that need to be shown.
  - Test2::EventFacet::Hub - Facet for the hubs an event passes through.
  - Test2::EventFacet::Info - Facet for information a developer might care about.
  - Test2::EventFacet::Info::Table - Intermediary representation of a table.
  - Test2::EventFacet::Meta - Facet for meta-data
  - Test2::EventFacet::Parent - Facet for events contains other events
  - Test2::EventFacet::Plan - Facet for setting the plan
  - Test2::EventFacet::Render - Facet that dictates how to render an event.
  - Test2::EventFacet::Trace - Debug information for events
  - Test2::Formatter - Namespace for formatters.
  - Test2::Formatter::TAP - Standard TAP formatter
  - Test2::Hub - The conduit through which all events flow.
  - Test2::Hub::Interceptor - Hub used by interceptor to grab results.
  - Test2::Hub::Interceptor::Terminator - Exception class used by Test2::Hub::Interceptor
  - Test2::Hub::Subtest - Hub used by subtests
  - Test2::IPC - Turn on IPC for threading or forking support.
  - Test2::IPC::Driver - Base class for Test2 IPC drivers.
  - Test2::IPC::Driver::Files - Temp dir + Files concurrency model.
  - Test2::Tools::Tiny - Tiny set of tools for unfortunate souls who cannot use Test2::Suite.
  - Test2::Transition - Transition notes when upgrading to Test2
  - Test2::Util - Tools used by Test2 and friends.
  - Test2::Util::ExternalMeta - Allow third party tools to safely attach meta-data to your instances.
  - Test2::Util::Facets2Legacy - Convert facet data to the legacy event API.
  - Test2::Util::HashBase - Build hash based classes.
  - Test2::Util::Trace - Legacy wrapper fro Test2::EventFacet::Trace.
  - Test::Builder - Backend for building test libraries
  - Test::Builder::Formatter - Test::Builder subclass of Test2::Formatter::TAP
  - Test::Builder::IO::Scalar - A copy of IO::Scalar for Test::Builder
  - Test::Builder::Module - Base class for test modules
  - Test::Builder::Tester - test testsuites that have been built with Test::Builder
  - Test::Builder::Tester::Color - turn on colour in Test::Builder::Tester
  - Test::Builder::TodoDiag - Test::Builder subclass of Test2::Event::Diag
  - Test::Harness - Run Perl standard test scripts with statistics
  - Test::More - yet another framework for writing test scripts
  - Test::Simple - Basic utilities for writing tests.
  - Test::Tester - Ease testing test modules built with Test::Builder
  - Test::Tester::Capture - Help testing test modules built with Test::Builder
  - Test::Tester::CaptureRunner - Help testing test modules built with Test::Builder
  - Test::Tutorial - A tutorial about writing really basic tests
  - Test::use::ok - Alternative to Test::More::use_ok
  - Text::Abbrev - abbrev - create an abbreviation table from a list
  - Text::Balanced - Extract delimited text sequences from strings.
  - Text::ParseWords - parse text into an array of tokens or array of arrays
  - Text::Tabs - expand and unexpand tabs like unix expand(1) and unexpand(1)
  - Text::Wrap - line wrapping to form simple paragraphs
  - Thread - Manipulate threads in Perl (for old code only)
  - Thread::Queue - Thread-safe queues
  - Thread::Semaphore - Thread-safe semaphores
  - Tie::Array - base class for tied arrays
  - Tie::File - Access the lines of a disk file via a Perl array
  - Tie::Handle - base class definitions for tied handles
  - Tie::Hash, Tie::StdHash, Tie::ExtraHash - base class definitions for tied hashes
  - Tie::Hash::NamedCapture - Named regexp capture buffers
  - Tie::Memoize - add data to hash when needed
  - Tie::RefHash - Use references as hash keys
  - Tie::Scalar, Tie::StdScalar - base class definitions for tied scalars
  - Tie::StdHandle - base class definitions for tied handles
  - Tie::SubstrHash - Fixed-table-size, fixed-key-length hashing
  - Time::HiRes - High resolution alarm, sleep, gettimeofday, interval timers
  - Time::Local - Efficiently compute time from local and GMT time
  - Time::Piece - Object Oriented time objects
  - Time::Seconds - a simple API to convert seconds to other date values
  - Time::gmtime - by-name interface to Perl's built-in gmtime() function
  - Time::localtime - by-name interface to Perl's built-in localtime() function
  - Time::tm - internal object used by Time::gmtime and Time::localtime
  - UNIVERSAL - base class for ALL classes (blessed references)
  - Unicode::Collate - Unicode Collation Algorithm
  - Unicode::Collate::CJK::Big5 - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::CJK::GB2312 - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::CJK::JISX0208 - weighting JIS KANJI for Unicode::Collate
  - Unicode::Collate::CJK::Korean - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::CJK::Pinyin - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::CJK::Stroke - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::CJK::Zhuyin - weighting CJK Unified Ideographs for Unicode::Collate
  - Unicode::Collate::Locale - Linguistic tailoring for DUCET via Unicode::Collate
  - Unicode::Normalize - Unicode Normalization Forms
  - Unicode::UCD - Unicode character database
  - User::grent - by-name interface to Perl's built-in getgr*() functions
  - User::pwent - by-name interface to Perl's built-in getpw*() functions
  - Win32 - Interfaces to some Win32 API Functions
  - Win32API::File - Low-level access to Win32 system API calls for files/dirs.
  - Win32CORE - Win32 CORE function stubs
- AUXILIARY DOCUMENTATION
- AUTHOR

# NAME

perltoc - 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
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

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

    0. Start with the first letter in the string `'a'`, 1. Try the first alternative in the first group `'abd'`, 2. Match `'a'` followed by `'b'`. So far so good, 3. `'d'` in the regexp doesn't match `'c'` in the string - a dead end. So backtrack two characters and pick the second alternative in the first group `'abc'`, 4. Match `'a'` followed by `'b'` followed by `'c'`. We are on a roll and have satisfied the first group. Set `$1` to `'abc'`, 5 Move on to the second group and pick the first alternative `'df'`, 6 Match the `'d'`, 7. `'f'` in the regexp doesn't match `'e'` in the string, so a dead end. Backtrack one character and pick the second alternative in the second group `'d'`, 8. `'d'` matches. The second grouping is satisfied, so set `$2` to `'d'`, 9. We are at the end of the regexp, so we are done! We have matched `'abcd'` out of the string `"abcde"`

  Extracting matches
  Backreferences
  Relative backreferences
  Named backreferences
  Alternative capture group numbering
  Position information
  Non-capturing groupings
  Matching repetitions

    0. Start with the first letter in the string `'t'`, 1. The first quantifier `'.*'` starts out by matching the whole string "`the cat in the hat`", 2. `'a'` in the regexp element `'at'` doesn't match the end of the string. Backtrack one character, 3. `'a'` in the regexp element `'at'` still doesn't match the last letter of the string `'t'`, so backtrack one more character, 4. Now we can match the `'a'` and the `'t'`, 5. Move on to the third element `'.*'`. Since we are at the end of the string and `'.*'` can match 0 times, assign it the empty string, 6. We are done!

  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 are Perl 4, Perl 5, or Raku (Perl 6)?
  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?
  How come when I open a file read-write it wipes 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?
  How come exec() doesn't 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, the `PERL5LIB` environment variable, the `perl -Idir` command line flag, the `lib` 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

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 operators and precedence

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
  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 of `s'''`, `''`, `q//`, `tr'''`, `y'''`, the replacement of `s'''`, `tr///`, `y///`, `""`, ````, `qq//`, `qx//`, `<file*glob>`, `<<"EOF"`, The replacement of `s///`, `RE` in `m?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

## perlsub - Perl subroutines

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, 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, 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., the `use 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__ , fileno FILEHANDLE , fileno DIRHANDLE, flock FILEHANDLE,OPERATION , fork , format , formline PICTURE,LIST , getc FILEHANDLE , getc, getlogin , getpeername SOCKET , getpgrp PID , getppid , getpriority WHICH,WHO , getpwnam NAME , getgrnam NAME, gethostbyname NAME, getnetbyname NAME, getprotobyname NAME, getpwuid UID, getgrgid GID, getservbyname NAME,PROTO, gethostbyaddr ADDR,ADDRTYPE, getnetbyaddr ADDR,ADDRTYPE, getprotobynumber NUMBER, getservbyport PORT,PROTO, getpwent, getgrent, gethostent, getnetent, getprotoent, getservent, setpwent, setgrent, sethostent STAYOPEN, setnetent STAYOPEN, setprotoent STAYOPEN, setservent STAYOPEN, endpwent, endgrent, endhostent, endnetent, endprotoent, endservent, getsockname SOCKET , getsockopt SOCKET,LEVEL,OPTNAME , glob EXPR , glob, gmtime EXPR , gmtime, goto LABEL , goto EXPR, goto &NAME, grep BLOCK LIST , grep EXPR,LIST, hex EXPR , hex, import LIST , index STR,SUBSTR,POSITION , index STR,SUBSTR, int EXPR , int, ioctl FILEHANDLE,FUNCTION,SCALAR , join EXPR,LIST , keys HASH , keys ARRAY, kill SIGNAL, LIST, kill SIGNAL , last LABEL , last EXPR, last, lc EXPR , lc, If `use bytes` is in effect:, Otherwise, if `use locale` for `LC_CTYPE` is in effect:, Otherwise, If EXPR has the UTF8 flag set:, Otherwise, if `use feature 'unicode_strings'` or `use 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, mkdir FILENAME,MODE , mkdir FILENAME, mkdir, msgctl ID,CMD,ARG , msgget KEY,FLAGS , msgrcv ID,VAR,SIZE,TYPE,FLAGS , msgsnd ID,MSG,FLAGS , my VARLIST , my TYPE VARLIST, my VARLIST : ATTRS, my TYPE VARLIST : ATTRS, next LABEL , next EXPR, next, no MODULE VERSION LIST , no MODULE VERSION, no MODULE LIST, no MODULE, no VERSION, oct EXPR , oct, open FILEHANDLE,MODE,EXPR , open FILEHANDLE,MODE,EXPR,LIST, open FILEHANDLE,MODE,REFERENCE, open FILEHANDLE,EXPR, open FILEHANDLE, Working with files, Simple examples, About filehandles, About modes, Checking the return value, Specifying I/O layers in MODE, Using `undef` for temporary files, Opening a filehandle into an in-memory scalar, Opening a filehandle into a command, Duping filehandles, Legacy usage, Specifying mode and filename as a single argument, Calling `open` with one argument via global variables, Assigning a filehandle to a bareword, Other considerations, Automatic filehandle closure, Automatic pipe flushing, Direct versus by-reference assignment of filehandles, Whitespace and special characters in the filename argument, Invoking C-style `open`, Portability issues, opendir DIRHANDLE,EXPR , ord EXPR , ord, our VARLIST , our TYPE VARLIST, our VARLIST : ATTRS, our TYPE VARLIST : ATTRS, pack TEMPLATE,LIST , package NAMESPACE, package NAMESPACE VERSION , package NAMESPACE BLOCK, package NAMESPACE VERSION BLOCK , __PACKAGE__ , pipe READHANDLE,WRITEHANDLE , pop ARRAY , pop, pos SCALAR , pos, print FILEHANDLE LIST , print FILEHANDLE, print LIST, print, printf FILEHANDLE FORMAT, LIST , printf FILEHANDLE, printf FORMAT, LIST, printf, prototype FUNCTION , prototype, push ARRAY,LIST , q/STRING/, qq/STRING/, qw/STRING/, qx/STRING/, qr/STRING/, quotemeta EXPR , quotemeta, rand EXPR , rand, read FILEHANDLE,SCALAR,LENGTH,OFFSET , read FILEHANDLE,SCALAR,LENGTH, readdir DIRHANDLE , readline EXPR, readline , readlink EXPR , readlink, readpipe EXPR, readpipe , recv SOCKET,SCALAR,LENGTH,FLAGS , redo LABEL , redo EXPR, redo, ref EXPR , ref, rename OLDNAME,NEWNAME , require VERSION , require EXPR, require, reset EXPR , reset, return EXPR , return, reverse LIST , rewinddir DIRHANDLE , rindex STR,SUBSTR,POSITION , rindex STR,SUBSTR, rmdir FILENAME , rmdir, s///, say FILEHANDLE LIST , say FILEHANDLE, say LIST, say, scalar EXPR , seek FILEHANDLE,POSITION,WHENCE , seekdir DIRHANDLE,POS , select FILEHANDLE , select, select RBITS,WBITS,EBITS,TIMEOUT , semctl ID,SEMNUM,CMD,ARG , semget KEY,NSEMS,FLAGS , semop KEY,OPSTRING , send SOCKET,MSG,FLAGS,TO , send SOCKET,MSG,FLAGS, setpgrp PID,PGRP , setpriority WHICH,WHO,PRIORITY , setsockopt SOCKET,LEVEL,OPTNAME,OPTVAL , shift ARRAY , shift, shmctl ID,CMD,ARG , shmget KEY,SIZE,FLAGS , shmread ID,VAR,POS,SIZE , shmwrite ID,STRING,POS,SIZE, shutdown SOCKET,HOW , sin EXPR , sin, sleep EXPR , sleep, socket SOCKET,DOMAIN,TYPE,PROTOCOL , socketpair SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL , sort SUBNAME LIST , sort BLOCK LIST, sort LIST, splice ARRAY,OFFSET,LENGTH,LIST , splice ARRAY,OFFSET,LENGTH, splice ARRAY,OFFSET, splice ARRAY, split /PATTERN/,EXPR,LIMIT , split /PATTERN/,EXPR, split /PATTERN/, split, sprintf FORMAT, LIST , format parameter index, flags, vector flag, (minimum) width, precision, or maximum width , size, order of arguments, sqrt EXPR , sqrt, srand EXPR , srand, stat FILEHANDLE , stat EXPR, stat DIRHANDLE, stat, state VARLIST , state TYPE VARLIST, state VARLIST : ATTRS, state TYPE VARLIST : ATTRS, study SCALAR , study, sub NAME BLOCK , sub NAME (PROTO) BLOCK, sub NAME : ATTRS BLOCK, sub NAME (PROTO) : ATTRS BLOCK, __SUB__ , substr EXPR,OFFSET,LENGTH,REPLACEMENT , substr EXPR,OFFSET,LENGTH, substr EXPR,OFFSET, symlink OLDFILE,NEWFILE , syscall NUMBER, LIST , sysopen FILEHANDLE,FILENAME,MODE , sysopen FILEHANDLE,FILENAME,MODE,PERMS, sysread FILEHANDLE,SCALAR,LENGTH,OFFSET , sysread FILEHANDLE,SCALAR,LENGTH, sysseek FILEHANDLE,POSITION,WHENCE , system LIST , system PROGRAM LIST, syswrite FILEHANDLE,SCALAR,LENGTH,OFFSET , syswrite FILEHANDLE,SCALAR,LENGTH, syswrite FILEHANDLE,SCALAR, tell FILEHANDLE , tell, telldir DIRHANDLE , tie VARIABLE,CLASSNAME,LIST , tied VARIABLE , time , times , tr///, truncate FILEHANDLE,LENGTH , truncate EXPR,LENGTH, uc EXPR , uc, ucfirst EXPR , ucfirst, umask EXPR , umask, undef EXPR , undef, unlink LIST , unlink, unpack TEMPLATE,EXPR , unpack TEMPLATE, unshift ARRAY,LIST , untie VARIABLE , use Module VERSION LIST , use Module VERSION, use Module LIST, use Module, use VERSION, utime LIST , values HASH , values ARRAY, vec EXPR,OFFSET,BITS , wait , waitpid PID,FLAGS , wantarray , warn LIST , write FILEHANDLE , write EXPR, write, y///

  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

## 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
  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 , $INPLACE_EDIT, $^I , @ISA , $^M , $OSNAME, $^O , %SIG , $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 as `substr($var, 0, $-[0])`, `$&` is the same as `substr($var, $-[0], $+[0] - $-[0])`, `$'` is the same as `substr($var, $+[0])`, `$1` is the same as `substr($var, $-[1], $+[1] - $-[1])`, `$2` is the same as `substr($var, $-[2], $+[2] - $-[2])`, `$3` is the same as `substr($var, $-[3], $+[3] - $-[3])`, %{^CAPTURE_ALL} , %- , $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` and `xx` , `p` , `a`, `d`, `l`, and `u` , `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 })` , `(?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 })`, `(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

## 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 during `use 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.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, Category `LC_MONETARY`: Formatting of monetary amounts, Category `LC_TIME`: Date/Time formatting, Category `LC_MESSAGES`: Error and other messages, Category `LC_COLLATE`: Collation, Category `LC_CTYPE`: Character Types, Other categories

PREPARING TO USE LOCALES
USING LOCALES
  The `"use locale"` pragma

    Not within the scope of `"use locale"`, Lingering effects of `use locale`, Under `"use locale";`

  The setlocale function
  Multi-threaded operation
  Finding locales
  LOCALE PROBLEMS
  Testing for broken locales
  Temporarily fixing locale problems
  Permanently fixing locale problems
  Permanently fixing your system's locale configuration
  Fixing system locale configuration
  The localeconv function
  I18N::Langinfo
LOCALE CATEGORIES
  Category `LC_COLLATE`: Collation: Text Comparisons and Sorting
  Category `LC_CTYPE`: Character Types
  Category `LC_NUMERIC`: Numeric Formatting
  Category `LC_MONETARY`: Formatting of monetary amounts
  Category `LC_TIME`: Respresentation of time
  Other 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` and `LC_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` characters
  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 only `U+10000` to `U+10FFFF` but also beyond `U+10FFFF`, [9] Unicode has rewritten this portion of UTS#18 to say that getting canonical equivalence (see UAX#15 "Unicode Normalization Forms") 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",, [12] see "Wildcards in Property Values" 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` and `encode_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` and `utf8`?
  I lost track; what encoding is the internal format really?
AUTHOR
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()` and `utf8::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, 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`, CORE, CPAN, CPAN::API::HOWTO, CPAN::Debug, CPAN::Distroprefs, CPAN::FirstTime, CPAN::HandleConfig, CPAN::Kwalify, CPAN::Meta, CPAN::Meta::Converter, CPAN::Meta::Feature, CPAN::Meta::History, CPAN::Meta::History::Meta_1_0, CPAN::Meta::History::Meta_1_1, CPAN::Meta::History::Meta_1_2, CPAN::Meta::History::Meta_1_3, CPAN::Meta::History::Meta_1_4, CPAN::Meta::Merge, CPAN::Meta::Prereqs, CPAN::Meta::Requirements, CPAN::Meta::Spec, CPAN::Meta::Validator, CPAN::Meta::YAML, CPAN::Nox, CPAN::Plugin, CPAN::Plugin::Specfile, CPAN::Queue, CPAN::Tarzip, CPAN::Version, Carp, Class::Struct, Compress::Raw::Bzip2, Compress::Raw::Zlib, Compress::Zlib, Config, Config::Extensions, Config::Perl::V, Cwd, DB, DBM_Filter, DBM_Filter::compress, DBM_Filter::encode, DBM_Filter::int32, DBM_Filter::null, DBM_Filter::utf8, DB_File, Data::Dumper, Devel::PPPort, Devel::Peek, Devel::SelfStubber, Digest, Digest::MD5, Digest::SHA, Digest::base, Digest::file, DirHandle, Dumpvalue, DynaLoader, Encode, Encode::Alias, Encode::Byte, Encode::CJKConstants, Encode::CN, Encode::CN::HZ, Encode::Config, Encode::EBCDIC, Encode::Encoder, Encode::Encoding, Encode::GSM0338, Encode::Guess, Encode::JP, Encode::JP::H2Z, Encode::JP::JIS7, Encode::KR, Encode::KR::2022_KR, Encode::MIME::Header, Encode::MIME::Name, Encode::PerlIO, Encode::Supported, Encode::Symbol, Encode::TW, Encode::Unicode, Encode::Unicode::UTF7, English, Env, Errno, Exporter, Exporter::Heavy, ExtUtils::CBuilder, ExtUtils::CBuilder::Platform::Windows, ExtUtils::Command, ExtUtils::Command::MM, ExtUtils::Constant, ExtUtils::Constant::Base, ExtUtils::Constant::Utils, ExtUtils::Constant::XS, ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM, ExtUtils::MM_AIX, ExtUtils::MM_Any, ExtUtils::MM_BeOS, ExtUtils::MM_Cygwin, ExtUtils::MM_DOS, ExtUtils::MM_Darwin, ExtUtils::MM_MacOS, ExtUtils::MM_NW5, ExtUtils::MM_OS2, ExtUtils::MM_OS390, ExtUtils::MM_QNX, ExtUtils::MM_UWIN, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_VOS, ExtUtils::MM_Win32, ExtUtils::MM_Win95, ExtUtils::MY, ExtUtils::MakeMaker, ExtUtils::MakeMaker::Config, ExtUtils::MakeMaker::FAQ, ExtUtils::MakeMaker::Locale, ExtUtils::MakeMaker::Tutorial, ExtUtils::Manifest, ExtUtils::Miniperl, ExtUtils::Mkbootstrap, ExtUtils::Mksymlists, ExtUtils::PL2Bat, ExtUtils::Packlist, ExtUtils::ParseXS, ExtUtils::ParseXS::Constants, ExtUtils::ParseXS::Eval, ExtUtils::ParseXS::Utilities, ExtUtils::Typemaps, ExtUtils::Typemaps::Cmd, ExtUtils::Typemaps::InputMap, ExtUtils::Typemaps::OutputMap, ExtUtils::Typemaps::Type, ExtUtils::XSSymSet, ExtUtils::testlib, Fatal, Fcntl, File::Basename, File::Compare, File::Copy, File::DosGlob, File::Fetch, File::Find, File::Glob, File::GlobMapper, File::Path, File::Spec, File::Spec::AmigaOS, File::Spec::Cygwin, File::Spec::Epoc, File::Spec::Functions, File::Spec::Mac, File::Spec::OS2, File::Spec::Unix, File::Spec::VMS, File::Spec::Win32, File::Temp, File::stat, FileCache, FileHandle, Filter::Simple, Filter::Util::Call, FindBin, GDBM_File, Getopt::Long, Getopt::Std, HTTP::Tiny, Hash::Util, Hash::Util::FieldHash, I18N::Collate, I18N::LangTags, I18N::LangTags::Detect, I18N::LangTags::List, I18N::Langinfo, IO, IO::Compress::Base, IO::Compress::Bzip2, IO::Compress::Deflate, IO::Compress::FAQ, IO::Compress::Gzip, IO::Compress::RawDeflate, IO::Compress::Zip, IO::Dir, IO::File, IO::Handle, IO::Pipe, IO::Poll, IO::Seekable, IO::Select, IO::Socket, IO::Socket::INET, IO::Socket::UNIX, IO::Uncompress::AnyInflate, IO::Uncompress::AnyUncompress, IO::Uncompress::Base, IO::Uncompress::Bunzip2, IO::Uncompress::Gunzip, IO::Uncompress::Inflate, IO::Uncompress::RawInflate, IO::Uncompress::Unzip, IO::Zlib, IPC::Cmd, IPC::Msg, IPC::Open2, IPC::Open3, IPC::Semaphore, IPC::SharedMem, IPC::SysV, Internals, JSON::PP, JSON::PP::Boolean, List::Util, List::Util::XS, Locale::Maketext, Locale::Maketext::Cookbook, Locale::Maketext::Guts, Locale::Maketext::GutsLoader, Locale::Maketext::Simple, Locale::Maketext::TPJ13, MIME::Base64, MIME::QuotedPrint, Math::BigFloat, Math::BigInt, Math::BigInt::Calc, Math::BigInt::FastCalc, Math::BigInt::Lib, Math::BigRat, Math::Complex, Math::Trig, Memoize, Memoize::AnyDBM_File, Memoize::Expire, Memoize::ExpireFile, Memoize::ExpireTest, Memoize::NDBM_File, Memoize::SDBM_File, Memoize::Storable, Module::CoreList, Module::CoreList::Utils, Module::Load, Module::Load::Conditional, Module::Loaded, Module::Metadata, NDBM_File, NEXT, Net::Cmd, Net::Config, Net::Domain, Net::FTP, Net::FTP::dataconn, Net::NNTP, Net::Netrc, Net::POP3, Net::Ping, Net::SMTP, Net::Time, Net::hostent, Net::libnetFAQ, Net::netent, Net::protoent, Net::servent, O, ODBM_File, Opcode, POSIX, Params::Check, Parse::CPAN::Meta, Perl::OSType, PerlIO, PerlIO::encoding, PerlIO::mmap, PerlIO::scalar, PerlIO::via, PerlIO::via::QuotedPrint, Pod::Checker, Pod::Escapes, Pod::Functions, Pod::Html, Pod::Html::Util, Pod::Man, Pod::ParseLink, Pod::Perldoc, Pod::Perldoc::BaseTo, Pod::Perldoc::GetOptsOO, Pod::Perldoc::ToANSI, Pod::Perldoc::ToChecker, Pod::Perldoc::ToMan, Pod::Perldoc::ToNroff, Pod::Perldoc::ToPod, Pod::Perldoc::ToRtf, Pod::Perldoc::ToTerm, Pod::Perldoc::ToText, Pod::Perldoc::ToTk, Pod::Perldoc::ToXml, Pod::Simple, Pod::Simple::Checker, Pod::Simple::Debug, Pod::Simple::DumpAsText, Pod::Simple::DumpAsXML, Pod::Simple::HTML, Pod::Simple::HTMLBatch, Pod::Simple::JustPod, Pod::Simple::LinkSection, Pod::Simple::Methody, Pod::Simple::PullParser, Pod::Simple::PullParserEndToken, Pod::Simple::PullParserStartToken, Pod::Simple::PullParserTextToken, Pod::Simple::PullParserToken, Pod::Simple::RTF, Pod::Simple::Search, Pod::Simple::SimpleTree, Pod::Simple::Subclassing, Pod::Simple::Text, Pod::Simple::TextContent, Pod::Simple::XHTML, Pod::Simple::XMLOutStream, Pod::Text, Pod::Text::Color, Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Scalar::Util, Search::Dict, SelectSaver, SelfLoader, Storable, Sub::Util, Symbol, Sys::Hostname, Sys::Syslog, Sys::Syslog::Win32, TAP::Base, TAP::Formatter::Base, TAP::Formatter::Color, TAP::Formatter::Console, TAP::Formatter::Console::ParallelSession, TAP::Formatter::Console::Session, TAP::Formatter::File, TAP::Formatter::File::Session, TAP::Formatter::Session, TAP::Harness, TAP::Harness::Env, TAP::Object, TAP::Parser, TAP::Parser::Aggregator, TAP::Parser::Grammar, TAP::Parser::Iterator, TAP::Parser::Iterator::Array, TAP::Parser::Iterator::Process, TAP::Parser::Iterator::Stream, TAP::Parser::IteratorFactory, TAP::Parser::Multiplexer, TAP::Parser::Result, TAP::Parser::Result::Bailout, TAP::Parser::Result::Comment, TAP::Parser::Result::Plan, TAP::Parser::Result::Pragma, TAP::Parser::Result::Test, TAP::Parser::Result::Unknown, TAP::Parser::Result::Version, TAP::Parser::Result::YAML, TAP::Parser::ResultFactory, TAP::Parser::Scheduler, TAP::Parser::Scheduler::Job, TAP::Parser::Scheduler::Spinner, TAP::Parser::Source, TAP::Parser::SourceHandler, TAP::Parser::SourceHandler::Executable, TAP::Parser::SourceHandler::File, TAP::Parser::SourceHandler::Handle, TAP::Parser::SourceHandler::Perl, TAP::Parser::SourceHandler::RawTAP, TAP::Parser::YAMLish::Reader, TAP::Parser::YAMLish::Writer, Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test, Test2, Test2::API, Test2::API::Breakage, Test2::API::Context, Test2::API::Instance, Test2::API::InterceptResult, Test2::API::InterceptResult::Event, Test2::API::InterceptResult::Hub, Test2::API::InterceptResult::Squasher, Test2::API::Stack, Test2::Event, Test2::Event::Bail, Test2::Event::Diag, Test2::Event::Encoding, Test2::Event::Exception, Test2::Event::Fail, Test2::Event::Generic, Test2::Event::Note, Test2::Event::Ok, Test2::Event::Pass, Test2::Event::Plan, Test2::Event::Skip, Test2::Event::Subtest, Test2::Event::TAP::Version, Test2::Event::V2, Test2::Event::Waiting, Test2::EventFacet, Test2::EventFacet::About, Test2::EventFacet::Amnesty, Test2::EventFacet::Assert, Test2::EventFacet::Control, Test2::EventFacet::Error, Test2::EventFacet::Hub, Test2::EventFacet::Info, Test2::EventFacet::Info::Table, Test2::EventFacet::Meta, Test2::EventFacet::Parent, Test2::EventFacet::Plan, Test2::EventFacet::Render, Test2::EventFacet::Trace, Test2::Formatter, Test2::Formatter::TAP, Test2::Hub, Test2::Hub::Interceptor, Test2::Hub::Interceptor::Terminator, Test2::Hub::Subtest, Test2::IPC, Test2::IPC::Driver, Test2::IPC::Driver::Files, Test2::Tools::Tiny, Test2::Transition, Test2::Util, Test2::Util::ExternalMeta, Test2::Util::Facets2Legacy, Test2::Util::HashBase, Test2::Util::Trace, Test::Builder, Test::Builder::Formatter, Test::Builder::IO::Scalar, Test::Builder::Module, Test::Builder::Tester, Test::Builder::Tester::Color, Test::Builder::TodoDiag, Test::Harness, Test::Harness::Beyond, Test::More, Test::Simple, Test::Tester, Test::Tester::Capture, Test::Tester::CaptureRunner, Test::Tutorial, Test::use::ok, Text::Abbrev, Text::Balanced, Text::ParseWords, Text::Tabs, Text::Wrap, Thread, Thread::Queue, Thread::Semaphore, Tie::Array, Tie::File, Tie::Handle, Tie::Hash, Tie::Hash::NamedCapture, Tie::Memoize, Tie::RefHash, Tie::Scalar, Tie::StdHandle, Tie::SubstrHash, Time::HiRes, Time::Local, Time::Piece, Time::Seconds, Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, Unicode::Collate, Unicode::Collate::CJK::Big5, Unicode::Collate::CJK::GB2312, Unicode::Collate::CJK::JISX0208, Unicode::Collate::CJK::Korean, Unicode::Collate::CJK::Pinyin, Unicode::Collate::CJK::Stroke, Unicode::Collate::CJK::Zhuyin, Unicode::Collate::Locale, Unicode::Normalize, Unicode::UCD, User::grent, User::pwent, VMS::DCLsym, VMS::Filespec, VMS::Stdio, Win32, Win32API::File, Win32CORE, XS::APItest, XS::Typemap, XSLoader, autodie::Scope::Guard, autodie::Scope::GuardStack, autodie::Util, version::Internals

  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

  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 assignments
  Maintaining 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` STRING `at` POS, `floating` STRING `at` 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)

  Thread-aware system interfaces
EXAMPLES
CAVEATS

  Non-locale-aware XS code, Locale-aware XS code

XS VERSION
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 - Internal replacements for standard C library functions

DESCRIPTION
  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
SEE ALSO

## perlguts - Introduction to the Perl API

DESCRIPTION
Variables
  Datatypes
  What is an "IV"?
  Working with SVs

    `SvIV(SV*)` (`IV`) and `SvUV(SV*)` (`UV`), `SvNV(SV*)` (`double`), Strings are a bit complicated:, Byte string: `SvPVbyte(SV*, STRLEN len)` or `SvPVbyte_nolen(SV*)`, UTF-8 string: `SvPVutf8(SV*, STRLEN len)` or `SvPVutf8_nolen(SV*)`, You can also use `SvPV(SV*, STRLEN len)` or `SvPV_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-byte `char*`. 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
  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)`, `SAVEFREESV(SV *sv)`, `SAVEMORTALIZESV(SV *sv)`, `SAVEFREEOP(OP *op)`, `SAVEFREEPV(p)`, `SAVECLEARSV(SV *sv)`, `SAVEDELETE(HV *hv, char *key, I32 length)`, `SAVEDESTRUCTOR(DESTRUCTORFUNC_NOCONTEXT_t f, void *p)`, `SAVEDESTRUCTOR_X(DESTRUCTORFUNC_t f, void *p)`, `SAVESTACK_POS()`, `SV* save_scalar(GV *gv)`, `AV* save_ary(GV *gv)`, `HV* save_hash(GV *gv)`, `void save_item(SV *item)`, `void save_list(SV **sarg, I32 maxsarg)`, `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
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`, `lastparen`, and `lastcloseparen`
  `intflags`
  `pprivate`
  `offs`
  `precomp` `prelen`
  `paren_names`
  `substrs`
  `subbeg` `sublen` `saved_copy` `suboffset` `subcoffset`
  `wrapped` `wraplen`
  `seen_evals`
  `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`

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

## perlapi - autogenerated documentation for the perl public API

DESCRIPTION

  "AV Handling", "Callback Functions", "Casting", "Character case changing", "Character classification", "Compiler and Preprocessor information", "Compiler directives", "Compile-time scope hooks", "Concurrency", "COPs and Hint Hashes", "Custom Operators", "CV Handling", "Debugging", "Display functions", "Embedding, Threads, and Interpreter Cloning", "Errno", "Exception Handling (simple) Macros", "Filesystem configuration values", "Floating point", "General Configuration", "Global Variables", "GV Handling and Stashes", "Hook manipulation", "HV Handling", "Input/Output", "Integer", "I/O Formats", "Lexer interface", "Locales", "Magic", "Memory Management", "MRO", "Multicall Functions", "Numeric Functions", "Optrees", "Pack and Unpack", "Pad Data Structures", "Password and Group access", "Paths to system commands", "Prototype information", "REGEXP Functions", "Reports and Formats", "Signals", "Site configuration", "Sockets configuration values", "Source Filters", "Stack Manipulation Macros", "String Handling", "SV Flags", "SV Handling", "Tainting", "Time", "Typedef names", "Unicode Support", "Utility Functions", "Versioning", "Warning and Dieing", "XS", "Undocumented elements"

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_shift` , `av_store` , `av_tindex`, `av_top_index` , `av_undef` , `av_unshift` , `get_av` , `newAV`, `newAV_alloc_x`, `newAV_alloc_xz` , `newAV` form, `newAV_alloc_x` form, `newAV_alloc_xz` form, `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` , `PL_errgv`, `save_aptr`, `save_ary`, `SAVEBOOL`, `SAVEDELETE`, `SAVEDESTRUCTOR`, `SAVEDESTRUCTOR_X`, `SAVEFREEOP`, `SAVEFREEPV`, `SAVEFREESV`, `save_hash`, `save_hptr`, `SAVEI8`, `SAVEI32`, `SAVEI16`, `SAVEINT`, `save_item`, `SAVEIV`, `save_list`, `SAVELONG`, `SAVEMORTALIZESV`, `SAVEPPTR`, `save_scalar`, `SAVESPTR`, `SAVESTACK_POS`, `SAVESTRLEN`, `save_svref`, `SAVETMPS`

Casting

  `cBOOL` , `I_32` , `INT2PTR`, `I_V` , `PTR2IV`, `PTR2nat`, `PTR2NV`, `PTR2ul`, `PTR2UV`, `PTRV`, `U_32` , `U_V`

Character case changing

  `toFOLD`, `toFOLD_A`, `toFOLD_uvchr`, `toFOLD_utf8`, `toFOLD_utf8_safe` , `toLOWER`, `toLOWER_A`, `toLOWER_L1`, `toLOWER_LATIN1`, `toLOWER_LC`, `toLOWER_uvchr`, `toLOWER_utf8`, `toLOWER_utf8_safe` , `toTITLE`, `toTITLE_A`, `toTITLE_uvchr`, `toTITLE_utf8`, `toTITLE_utf8_safe` , `toUPPER`, `toUPPER_A`, `toUPPER_uvchr`, `toUPPER_utf8`, `toUPPER_utf8_safe`

Character classification

  `isALPHA`, `isALPHA_A`, `isALPHA_L1`, `isALPHA_uvchr`, `isALPHA_utf8_safe`, `isALPHA_utf8`, `isALPHA_LC`, `isALPHA_LC_uvchr`, `isALPHA_LC_utf8_safe` , `isALPHANUMERIC`, `isALPHANUMERIC_A`, `isALPHANUMERIC_L1`, `isALPHANUMERIC_uvchr`, `isALPHANUMERIC_utf8_safe`, `isALPHANUMERIC_utf8`, `isALPHANUMERIC_LC`, `isALPHANUMERIC_LC_uvchr`, `isALPHANUMERIC_LC_utf8_safe`, `isALNUMC`, `isALNUMC_A`, `isALNUMC_L1`, `isALNUMC_LC`, `isALNUMC_LC_uvchr` , `isASCII`, `isASCII_A`, `isASCII_L1`, `isASCII_uvchr`, `isASCII_utf8_safe`, `isASCII_utf8`, `isASCII_LC`, `isASCII_LC_uvchr`, `isASCII_LC_utf8_safe` , `isBLANK`, `isBLANK_A`, `isBLANK_L1`, `isBLANK_uvchr`, `isBLANK_utf8_safe`, `isBLANK_utf8`, `isBLANK_LC`, `isBLANK_LC_uvchr`, `isBLANK_LC_utf8_safe` , `isCNTRL`, `isCNTRL_A`, `isCNTRL_L1`, `isCNTRL_uvchr`, `isCNTRL_utf8_safe`, `isCNTRL_utf8`, `isCNTRL_LC`, `isCNTRL_LC_uvchr`, `isCNTRL_LC_utf8_safe` , `isDIGIT`, `isDIGIT_A`, `isDIGIT_L1`, `isDIGIT_uvchr`, `isDIGIT_utf8_safe`, `isDIGIT_utf8`, `isDIGIT_LC`, `isDIGIT_LC_uvchr`, `isDIGIT_LC_utf8_safe` , `isGRAPH`, `isGRAPH_A`, `isGRAPH_L1`, `isGRAPH_uvchr`, `isGRAPH_utf8_safe`, `isGRAPH_utf8`, `isGRAPH_LC`, `isGRAPH_LC_uvchr`, `isGRAPH_LC_utf8_safe` , `isIDCONT`, `isIDCONT_A`, `isIDCONT_L1`, `isIDCONT_uvchr`, `isIDCONT_utf8_safe`, `isIDCONT_utf8`, `isIDCONT_LC`, `isIDCONT_LC_uvchr`, `isIDCONT_LC_utf8_safe` , `isIDFIRST`, `isIDFIRST_A`, `isIDFIRST_L1`, `isIDFIRST_uvchr`, `isIDFIRST_utf8_safe`, `isIDFIRST_utf8`, `isIDFIRST_LC`, `isIDFIRST_LC_uvchr`, `isIDFIRST_LC_utf8_safe` , `isLOWER`, `isLOWER_A`, `isLOWER_L1`, `isLOWER_uvchr`, `isLOWER_utf8_safe`, `isLOWER_utf8`, `isLOWER_LC`, `isLOWER_LC_uvchr`, `isLOWER_LC_utf8_safe` , `isOCTAL`, `isOCTAL_A`, `isOCTAL_L1` , `isPRINT`, `isPRINT_A`, `isPRINT_L1`, `isPRINT_uvchr`, `isPRINT_utf8_safe`, `isPRINT_utf8`, `isPRINT_LC`, `isPRINT_LC_uvchr`, `isPRINT_LC_utf8_safe` , `isPSXSPC`, `isPSXSPC_A`, `isPSXSPC_L1`, `isPSXSPC_uvchr`, `isPSXSPC_utf8_safe`, `isPSXSPC_utf8`, `isPSXSPC_LC`, `isPSXSPC_LC_uvchr`, `isPSXSPC_LC_utf8_safe` , `isPUNCT`, `isPUNCT_A`, `isPUNCT_L1`, `isPUNCT_uvchr`, `isPUNCT_utf8_safe`, `isPUNCT_utf8`, `isPUNCT_LC`, `isPUNCT_LC_uvchr`, `isPUNCT_LC_utf8_safe` , `isSPACE`, `isSPACE_A`, `isSPACE_L1`, `isSPACE_uvchr`, `isSPACE_utf8_safe`, `isSPACE_utf8`, `isSPACE_LC`, `isSPACE_LC_uvchr`, `isSPACE_LC_utf8_safe` , `isUPPER`, `isUPPER_A`, `isUPPER_L1`, `isUPPER_uvchr`, `isUPPER_utf8_safe`, `isUPPER_utf8`, `isUPPER_LC`, `isUPPER_LC_uvchr`, `isUPPER_LC_utf8_safe` , `isWORDCHAR`, `isWORDCHAR_A`, `isWORDCHAR_L1`, `isWORDCHAR_uvchr`, `isWORDCHAR_utf8_safe`, `isWORDCHAR_utf8`, `isWORDCHAR_LC`, `isWORDCHAR_LC_uvchr`, `isWORDCHAR_LC_utf8_safe`, `isALNUM`, `isALNUM_A`, `isALNUM_LC`, `isALNUM_LC_uvchr` , `isXDIGIT`, `isXDIGIT_A`, `isXDIGIT_L1`, `isXDIGIT_uvchr`, `isXDIGIT_utf8_safe`, `isXDIGIT_utf8`, `isXDIGIT_LC`, `isXDIGIT_LC_uvchr`, `isXDIGIT_LC_utf8_safe`

Compiler and Preprocessor information

  `CPPLAST` , `CPPMINUS` , `CPPRUN` , `CPPSTDIN` , `HASATTRIBUTE_ALWAYS_INLINE` , `HASATTRIBUTE_DEPRECATED` , `HASATTRIBUTE_FORMAT` , `HASATTRIBUTE_NONNULL` , `HASATTRIBUTE_NORETURN` , `HASATTRIBUTE_PURE` , `HASATTRIBUTE_UNUSED` , `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

  `ASSUME` , `dNOOP` , `END_EXTERN_C` , `EXTERN_C` , `LIKELY` , `NOOP` , `PERL_UNUSED_ARG` , `PERL_UNUSED_CONTEXT` , `PERL_UNUSED_DECL` , `PERL_UNUSED_RESULT` , `PERL_UNUSED_VAR` , `PERL_USE_GCC_BRACE_GROUPS` , `START_EXTERN_C` , `STATIC`, `STMT_START`, `STMT_END` , `UNLIKELY` , `__ASSERT_`

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_PTHREADS_API` , `OLD_PTHREAD_CREATE_JOINABLE` , `PERL_IMPLICIT_CONTEXT`, `pTHX`, `pTHX_`, `SCHED_YIELD`

COPs and Hint Hashes

  `cop_fetch_label` , `CopFILE` , `CopFILEAV` , `CopFILEAVn` , `CopFILEGV` , `CopFILEGV_set` , `CopFILE_set` , `CopFILESV` , `cophh_2hv` , `cophh_copy` , `cophh_delete_pvn`, `cophh_delete_pv`, `cophh_delete_pvs`, `cophh_delete_sv` , `cophh_exists_pvn` , `cophh_fetch_pvn`, `cophh_fetch_pv`, `cophh_fetch_pvs`, `cophh_fetch_sv` , `cophh_free` , `cophh_new_empty` , `cophh_store_pvn`, `cophh_store_pv`, `cophh_store_pvs`, `cophh_store_sv` , `cop_hints_2hv` , `cop_hints_exists_pvn`, `cop_hints_exists_pv`, `cop_hints_exists_pvs`, `cop_hints_exists_sv` , `cop_hints_fetch_pvn`, `cop_hints_fetch_pv`, `cop_hints_fetch_pvs`, `cop_hints_fetch_sv` , `CopLABEL`, `CopLABEL_len`, `CopLABEL_len_flags` , `CopLINE` , `CopSTASH` , `CopSTASH_eq` , `CopSTASHPV` , `CopSTASHPV_set` , `CopSTASH_set` , `cop_store_label` , `PERL_SI` , `PL_curcop`

Custom Operators

  `custom_op_desc` , `custom_op_name` , `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_cvs`, `get_cvn_flags` , `Nullcv` , `SvAMAGIC_off` , `SvAMAGIC_on`

Debugging

  `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` , `magic_dump` , `op_class` , `op_dump` , `PL_op`, `PL_runops`, `PL_sv_serial`, `pmop_dump` , `sv_dump` , `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` , `find_rundefsvoffset` , `HAS_SKIP_LOCALE_INIT`, `intro_my` , `load_module`, `load_module_nocontext` , `my_exit` , `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_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, `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_OPEN3` , `HAS_OPENAT` , `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_LVALUE` , `STDIO_PTR_LVAL_NOCHANGE_CNT` , `STDIO_PTR_LVAL_SETS_CNT` , `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_FPCLASSIFY` , `HAS_FPCLASSL` , `HAS_FPGETROUND` , `HAS_FP_CLASS` , `HAS_FP_CLASSIFY` , `HAS_FP_CLASSL` , `HAS_FREXPL` , `HAS_ILOGB` , `HAS_ISFINITE` , `HAS_ISFINITEL` , `HAS_ISINF` , `HAS_ISINFL` , `HAS_ISNAN` , `HAS_ISNANL` , `HAS_ISNORMAL` , `HAS_J0` , `HAS_J0L` , `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

  `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` , `PHOSTNAME` , `PROCSELFEXE_PATH` , `PTRSIZE` , `RANDBITS` , `SELECT_MIN_BITS` , `SETUID_SCRIPTS_ARE_SECURE_NOW` , `ST_DEV_SIGN` , `ST_DEV_SIZE`

  List of capability `HAS_foo` symbols
  List of `#include` needed symbols
Global Variables

  `PL_check` , `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 (because `destructing` is true), `gv_autoload4` , `GvAV` , `gv_AVadd`, `gv_HVadd`, `gv_IOadd`, `gv_SVadd` , `gv_const_sv` , `GvCV` , `gv_fetchfile`, `gv_fetchfile_flags` , `gv_fetchmeth` , `gv_fetchmethod` , `gv_fetchmethod_autoload` , `gv_fetchmeth_autoload` , `gv_fetchmeth_pv` , `gv_fetchmeth_pvn` , `gv_fetchmeth_pvn_autoload` , `gv_fetchmeth_pv_autoload` , `gv_fetchmeth_sv` , `gv_fetchmeth_sv_autoload` , `gv_fetchpv`, `gv_fetchpvn`, `gv_fetchpvn_flags`, `gv_fetchpvs`, `gv_fetchsv`, `gv_fetchsv_nomg` X <gv_fetchsv_nomg>, `gv_fullname3`, `gv_fullname4`, `gv_efullname3`, `gv_efullname4` , `GvHV` , `gv_init` , `gv_init_pv` , `gv_init_pvn` , `gv_init_sv` , `gv_stashpv` , `gv_stashpvn` , `gv_stashpvs` , `gv_stashsv` , `GvSV` , `GvSVn` , `newGVgen`, `newGVgen_flags` , `PL_curstash` , `PL_defgv` , `PL_defstash`, `save_gp` , `setdefout`

Hook manipulation

  `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_delete_ent` , `HvENAME` , `HvENAMELEN` , `HvENAMEUTF8` , `hv_exists` , `hv_exists_ent` , `hv_fetch` , `hv_fetchs` , `hv_fetch_ent` , `HvFILL` , `hv_iterinit` , `hv_iterkey` , `hv_iterkeysv` , `hv_iternext` , `hv_iternextsv` , `hv_iternext_flags` , `hv_iterval` , `hv_magic` , `HvNAME` , `HvNAMELEN` , `HvNAMEUTF8` , `hv_scalar` , `hv_store` , `hv_stores` , `hv_store_ent` , `hv_undef` , `newHV` , `newHVhv` , `Nullhv` , `PERL_HASH`, `PL_modglobal`

Input/Output

  `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_getc`, `PerlIO_get_cnt`, `PerlIO_getpos`, `PerlIO_get_ptr`, `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_setlinebuf`, `PerlIO_setpos`, `PerlIO_set_ptrcnt`, `PerlIO_stderr`, `PerlIO_stdin`, `PerlIO_stdout`, `PerlIO_stdoutf`, `PerlIO_tell`, `PerlIO_ungetc`, `PerlIO_unread`, `PerlIO_vprintf`, `PerlIO_write`, `PERLIO_FUNCS_CAST` , `PERLIO_FUNCS_DECL` , `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_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` , `I8`, `I16`, `I32`, `I64`, `IV`, `I32SIZE` , `I32TYPE` , `I64SIZE` , `I64TYPE` , `I16SIZE` , `I16TYPE` , `INT16_C`, `INT32_C`, `INT64_C` , `INTMAX_C` , `INTSIZE` , `I8SIZE` , `I8TYPE` , `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_SHORT_MAX`, `PERL_SHORT_MIN`, `PERL_UCHAR_MAX`, `PERL_UCHAR_MIN`, `PERL_UINT_MAX`, `PERL_UINT_MIN`, `PERL_ULONG_MAX`, `PERL_ULONG_MIN`, `PERL_USHORT_MAX`, `PERL_USHORT_MIN`, `PERL_QUAD_MAX`, `PERL_QUAD_MIN`, `PERL_UQUAD_MAX`, `PERL_UQUAD_MIN` , `SHORTSIZE` , `U8`, `U16`, `U32`, `U64`, `UV`, `U32SIZE` , `U32TYPE` , `U64SIZE` , `U64TYPE` , `U16SIZE` , `U16TYPE` , `UINT16_C`, `UINT32_C`, `UINT64_C` , `UINTMAX_C` , `U8SIZE` , `U8TYPE` , `UV_MAX` , `UV_MIN` , `UVSIZE` , `UVTYPE` , `WIDEST_UTYPE`

I/O Formats

  `IVdf` , `NVef` , `NVff` , `NVgf` , `PERL_PRIeldbl` , `PERL_PRIfldbl` , `PERL_PRIgldbl` , `PERL_SCNfldbl` , `PRINTF_FORMAT_NULL_OK` , `SVf`, `SVfARG`, `UTF8f`, `UTF8fARG`, `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` , `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_THREAD_SAFE_NL_LANGINFO_L` , `HAS_USELOCALE` , `I_LANGINFO` , `I_LOCALE` , `IN_LOCALE` , `IN_LOCALE_COMPILETIME` , `IN_LOCALE_RUNTIME` , `I_XLOCALE` , `NEED_XLOCALE_H` , `Perl_langinfo` , `Perl_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` , `switch_to_global_locale` , POSIX::localeconv, I18N::Langinfo, items `CRNCYSTR` and `THOUSEP`, "Perl_langinfo" in perlapi, items `CRNCYSTR` and `THOUSEP`, `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_length` , `mg_magical` , `mg_set` , `MGVTBL`, `perl_clone` , `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_env`, `PERL_MAGIC_envelem`, `PERL_MAGIC_ext`, `PERL_MAGIC_fm`, `PERL_MAGIC_hints`, `PERL_MAGIC_hintselem`, `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`, `ptr_table_fetch` , `ptr_table_free` , `ptr_table_new` , `ptr_table_split` , `ptr_table_store` , `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` , `LINKLIST` , `LISTOP`, `LOGOP`, `LOOP`, `newASSIGNOP` , `newATTRSUB` , `newBINOP` , `newCONDOP` , `newCONSTSUB` , `newCONSTSUB_flags` , `newDEFEROP` , `newDEFSVOP` , `newFOROP` , `newGIVENOP` , `newGVOP` , `newLISTOP` , `newLOGOP` , `newLOOPEX` , `newLOOPOP` , `newMETHOP` , `newMETHOP_named` , `newNULLLIST` , `newOP` , `newPADOP` , `newPMOP` , `newPVOP` , `newRANGE` , `newSLICEOP` , `newSTATEOP` , `newSUB` , `newSVOP` , `newTRYCATCHOP` , `newUNOP` , `newUNOP_AUX` , `newWHENOP` , `newWHILEOP` , `newXS` , `OA_BASEOP`, `OA_BINOP`, `OA_COP`, `OA_LISTOP`, `OA_LOGOP`, `OA_PADOP`, `OA_PMOP`, `OA_PVOP_OR_SVOP`, `OA_SVOP`, `OA_UNOP`, `OA_LOOP`, `OP`, `op_append_elem` , `op_append_list` , `OP_CLASS` , `op_contextualize` , `op_convert_list` , `OP_DESC` , `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` , `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

  `pack_cat` , `packlist` , `unpack_str` , `unpackstring`

Pad Data Structures

  `CvPADLIST` , `pad_add_name_pvs` , `PadARRAY` , `pad_compname_type` , `pad_findmy_pvs` , `PadlistARRAY` , `PadlistMAX` , `PadlistNAMES` , `PadlistNAMESARRAY` , `PadlistNAMESMAX` , `PadlistREFCNT` , `PadMAX` , `PadnameLEN` , `PadnamelistARRAY` , `PadnamelistMAX` , `PadnamelistREFCNT` , `PadnamelistREFCNT_dec` , `PadnamePV` , `PadnameREFCNT` , `PadnameREFCNT_dec` , `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` , `SRAND48_R_PROTO` , `SRANDOM_R_PROTO` , `STRERROR_R_PROTO` , `TMPNAM_R_PROTO` , `TTYNAME_R_PROTO`

REGEXP Functions

  `pregcomp`, `pregexec`, `re_compile` , `re_dup_guts` , `REGEX_LOCALE_CHARSET`, `REGEXP`, `regexp_engine` , `regexp_paren_pair`, `regmatch_info` , `REXEC_COPY_STR`, `REXEC_COPY_SKIP_PRE`, `REXEC_COPY_SKIP_POST`, `RXapif_CLEAR`, `RXapif_DELETE`, `RXapif_EXISTS`, `RXapif_FETCH`, `RXapif_FIRSTKEY`, `RXapif_NEXTKEY`, `RXapif_SCALAR`, `RXapif_STORE`, `RXapif_ALL`, `RXapif_ONE`, `RXapif_REGNAME`, `RXapif_REGNAMES`, `RXapif_REGNAMES_COUNT`, `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_PMf_MULTILINE`, `RXf_PMf_SINGLELINE`, `RXf_PMf_FOLD`, `RXf_PMf_EXTENDED`, `RXf_PMf_KEEPCOPY`, `RXf_SPLIT`, `RXf_SKIPWHITE`, `RXf_START_ONLY`, `RXf_WHITE`, `RXf_NULL`, `RXf_NO_INPLACE_SUBST`, `RX_MATCH_COPIED`, `RX_OFFS`, `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_CPLUSPLUS` , `USE_CROSS_COMPILE` , `USE_C_BACKTRACE` , `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

  `filter_add`, `filter_del` , `filter_read`, `scan_vstring`

Stack Manipulation Macros

  `dMARK` , `dORIGMARK` , `dSP` , `dTARGET` , `EXTEND` , `MARK` , `mPUSHi` , `mPUSHn` , `mPUSHp` , `mPUSHs` , `mPUSHu` , `mXPUSHi` , `mXPUSHn` , `mXPUSHp` , `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` , `PUSHs` , `PUSHu` , `PUTBACK` , `SAVEt_INT`, `SP` , `SPAGAIN` , `SSNEW`, `SSNEWa`, `SSNEWt`, `SSNEWat` , `SSPTR`, `SSPTRt` , `TARG` , `TOPs`, `XPUSHi` , `XPUSHmortal` , `XPUSHn` , `XPUSHp` , `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_strlcat` , `my_strlcpy` , `my_strnlen` , `my_vsnprintf` , `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_REGEXP` , `svtype`

SV Handling

  `boolSV` , `croak_xs_usage` , `DEFSV` , `DEFSV_set` , `get_sv` , `isGV_with_GP` , `looks_like_number` , `MUTABLE_PTR`, `MUTABLE_AV`, `MUTABLE_CV`, `MUTABLE_GV`, `MUTABLE_HV`, `MUTABLE_IO`, `MUTABLE_SV` , `newRV`, `newRV_inc` , `newRV_noinc` , `newSV` , `newSVhek` , `newSViv` , `newSVnv` , `newSVpadname` , `newSVpv` , `newSVpvf` , `newSVpvf_nocontext` , `newSVpvn` , `newSVpvn_flags` , `newSVpvn_share` , `newSVpvn_utf8` , `newSVpvs` , `newSVpvs_flags` , `newSVpv_share` , `newSVpvs_share` , `newSVrv` , `newSVsv`, `newSVsv_nomg`, `newSVsv_flags` , `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`, `sv_2cv` , `sv_2io` , `sv_2iv_flags` , `sv_2mortal` , `sv_2nv_flags` , `sv_2pv`, `sv_2pv_flags` , `sv_2pvbyte`, `sv_2pvbyte_flags` , `sv_2pvutf8`, `sv_2pvutf8_flags` , `sv_2uv_flags` , `SvAMAGIC` , `sv_backoff` , `sv_bless` , `sv_catpv`, `sv_catpv_flags`, `sv_catpv_mg`, `sv_catpv_nomg` , `sv_catpvf`, `sv_catpvf_nocontext`, `sv_catpvf_mg`, `sv_catpvf_mg_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_chop` , `sv_clear` , `sv_cmp` , `sv_cmp_flags` , `sv_cmp_locale` , `sv_cmp_locale_flags` , `sv_collxfrm` , `sv_collxfrm_flags` , `sv_copypv`, `sv_copypv_nomg`, `sv_copypv_flags` , `SvCUR` , `SvCUR_set` , `sv_dec`, `sv_dec_nomg` , `sv_derived_from` , `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` , `SvGETMAGIC` , `sv_gets` , `sv_get_backrefs` , `SvGROW` , `sv_inc`, `sv_inc_nomg` , `sv_insert` , `sv_insert_flags` , `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`, `SvIVx`, `SvIV_nomg` , `SvIV_set` , `SvIVX` , `SvLEN` , `sv_len` , `SvLEN_set` , `sv_len_utf8`, `sv_len_utf8_nomg` , `SvLOCK` , `sv_magic` , `sv_magicext` , `SvMAGIC_set` , `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`, `SvNVx`, `SvNV_nomg` , `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`, `SvPVx`, `SvPV_nomg`, `SvPV_nolen`, `SvPVx_nolen`, `SvPV_nomg_nolen`, `SvPV_mutable`, `SvPV_const`, `SvPVx_const`, `SvPV_nolen_const`, `SvPVx_nolen_const`, `SvPV_nomg_const`, `SvPV_nomg_const_nolen`, `SvPV_flags`, `SvPV_flags_const`, `SvPV_flags_mutable`, `SvPVbyte`, `SvPVbyte_nomg`, `SvPVbyte_nolen`, `SvPVbytex_nolen`, `SvPVbytex`, `SvPVbyte_or_null`, `SvPVbyte_or_null_nomg`, `SvPVutf8`, `SvPVutf8x`, `SvPVutf8_nomg`, `SvPVutf8_nolen`, `SvPVutf8_or_null`, `SvPVutf8_or_null_nomg` , `SvPVCLEAR` , `SvPV_force`, `SvPV_force_nolen`, `SvPVx_force`, `SvPV_force_nomg`, `SvPV_force_nomg_nolen`, `SvPV_force_mutable`, `SvPV_force_flags`, `SvPV_force_flags_nolen`, `SvPV_force_flags_mutable`, `SvPVbyte_force`, `SvPVbytex_force`, `SvPVutf8_force`, `SvPVutf8x_force` , `SvPV_free` , `sv_pvn_force_flags` , `SvPV_renew` , `SvPV_set` , `SvPVX`, `SvPVXx`, `SvPVX_const`, `SvPVX_mutable` , `SvPVXtrue` , `SvREADONLY` , `SvREADONLY_off` , `SvREADONLY_on` , `sv_ref` , `SvREFCNT` , `SvREFCNT_dec`, `SvREFCNT_dec_NN` , `SvREFCNT_inc`, `SvREFCNT_inc_NN`, `SvREFCNT_inc_void`, `SvREFCNT_inc_void_NN`, `SvREFCNT_inc_simple`, `SvREFCNT_inc_simple_NN`, `SvREFCNT_inc_simple_void`, `SvREFCNT_inc_simple_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_setiv`, `sv_setiv_mg` , `SvSETMAGIC` , `sv_setnv`, `sv_setnv_mg` , `sv_setpv`, `sv_setpv_mg`, `sv_setpvn`, `sv_setpvn_fresh`, `sv_setpvn_mg`, `sv_setpvs`, `sv_setpvs_mg` , `sv_setpvf`, `sv_setpvf_nocontext`, `sv_setpvf_mg`, `sv_setpvf_mg_nocontext` , `sv_setpviv`, `sv_setpviv_mg` , `sv_setpv_bufsize` , `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` , `SvSetSV`, `SvSetMagicSV`, `SvSetSV_nosteal`, `SvSetMagicSV_nosteal` , `sv_setsv`, `sv_setsv_flags`, `sv_setsv_mg`, `sv_setsv_nomg` , `sv_setuv`, `sv_setuv_mg` , `sv_set_undef` , `SvSHARE` , `SvSHARED_HASH` , `SvSTASH` , `SvSTASH_set` , `sv_streq` , `sv_streq_flags` , `SvTRUE`, `SvTRUEx`, `SvTRUE_nomg`, `SvTRUE_NN`, `SvTRUE_nomg_NN` , `SvTYPE` , `SvUNLOCK` , `sv_unmagic` , `sv_unmagicext` , `sv_unref` , `sv_unref_flags` , `SvUOK` , `SvUPGRADE` , `sv_upgrade` , `sv_usepvn`, `sv_usepvn_mg`, `sv_usepvn_flags` , `SvUTF8` , `sv_utf8_decode` , `sv_utf8_downgrade`, `sv_utf8_downgrade_flags`, `sv_utf8_downgrade_nomg` , `sv_utf8_encode` , `sv_utf8_upgrade`, `sv_utf8_upgrade_nomg`, `sv_utf8_upgrade_flags`, `sv_utf8_upgrade_flags_grow` , `SvUTF8_off` , `SvUTF8_on` , `SvUV`, `SvUVx`, `SvUV_nomg` , `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_ASCTIME64` , `HAS_ASCTIME_R` , `HAS_CTIME64` , `HAS_CTIME_R` , `HAS_DIFFTIME` , `HAS_DIFFTIME64` , `HAS_FUTIMES` , `HAS_GETITIMER` , `HAS_GETTIMEOFDAY` , `HAS_GMTIME64` , `HAS_GMTIME_R` , `HAS_LOCALTIME64` , `HAS_LOCALTIME_R` , `HAS_MKTIME` , `HAS_MKTIME64` , `HAS_NANOSLEEP` , `HAS_SETITIMER` , `HAS_STRFTIME` , `HAS_TIME` , `HAS_TIMEGM` , `HAS_TIMES` , `HAS_TM_TM_GMTOFF` , `HAS_TM_TM_ZONE` , `HAS_TZNAME` , `HAS_USLEEP` , `HAS_USLEEP_PROTO` , `I_TIME` , `I_UTIME` , `LOCALTIME_MAX` , `LOCALTIME_MIN` , `LOCALTIME_R_NEEDS_TZSET` , `LOCALTIME_R_PROTO` , `L_R_TZSET` , `mini_mktime` , `my_strftime`

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

  `BOM_UTF8` , `bytes_cmp_utf8` , `bytes_from_utf8` , `bytes_to_utf8` , `DO_UTF8` , `foldEQ_utf8` , `is_ascii_string` , `is_c9strict_utf8_string` , `is_c9strict_utf8_string_loc` , `is_c9strict_utf8_string_loclen` , `isC9_STRICT_UTF8_CHAR` , `is_invariant_string` , `isSTRICT_UTF8_CHAR` , `is_strict_utf8_string` , `is_strict_utf8_string_loc` , `is_strict_utf8_string_loclen` , `is_utf8_char` , `is_utf8_char_buf` , `is_utf8_fixed_width_buf_flags` , `is_utf8_fixed_width_buf_loclen_flags` , `is_utf8_fixed_width_buf_loc_flags` , `is_utf8_invariant_string` , `is_utf8_invariant_string_loc` , `is_utf8_string` , `is_utf8_string_flags` , `is_utf8_string_loc` , `is_utf8_string_loclen` , `is_utf8_string_loclen_flags` , `is_utf8_string_loc_flags` , `is_utf8_valid_partial_char` , `is_utf8_valid_partial_char_flags` , `isUTF8_CHAR` , `isUTF8_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` , `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`, `UTF8SKIP` , `"UTF8_SAFE_SKIP"` if you know the maximum ending pointer in the buffer pointed to by `s`; or, `"UTF8_CHK_SKIP"` if you don't know it, `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` , `UTF8_SAFE_SKIP` , `UTF8_SKIP` , `utf8_to_bytes` , `utf8_to_uvchr` , `utf8_to_uvchr_buf` , `UVCHR_IS_INVARIANT` , `UVCHR_SKIP` , `uvchr_to_utf8` , `uvchr_to_utf8_flags` , `uvchr_to_utf8_flags_msgs` , `text`, `warn_categories`, `flag`

Utility Functions

  `C_ARRAY_END` , `C_ARRAY_LENGTH` , `getcwd_sv` , `IN_PERL_COMPILETIME` , `IN_PERL_RUNTIME` , `IS_SAFE_SYSCALL` , `is_safe_syscall` , `my_setenv` , `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_NE`, `PERL_VERSION_LT`, `PERL_VERSION_LE`, `PERL_VERSION_GT`, `PERL_VERSION_GE` , `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

  `ckWARN`, `ckWARN2`, `ckWARN3`, `ckWARN4` , `ckWARN_d`, `ckWARN2_d`, `ckWARN3_d`, `ckWARN4_d` , `ck_warner`, `ck_warner_d` , `CLEAR_ERRSV` , `croak`, `croak_nocontext` , `croak_no_modify` , `croak_sv` , `die`, `die_nocontext` , `die_sv` , `ERRSV` , `packWARN`, `packWARN2`, `packWARN3`, `packWARN4` , `SANE_ERRSV` , `vcroak` , `vwarn` , `vwarner` , `warn`, `warn_nocontext` , `warner`, `warner_nocontext` , `warn_sv`

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` , `pop_scope` , `push_scope` , `save_adelete` , `save_generic_pvref` , `save_generic_svref` , `save_hdelete` , `save_hints` , `save_op` , `save_padsv_and_mortalize` , `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

  `CvWEAKOUTSIDE` , `docatch`

Debugging

  `_aDEPTH` , `debop` , `debprof` , `debprofdump` , `free_c_backtrace` , `get_c_backtrace` , `_pDEPTH` , `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`

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

  `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

  `validate_proto`

Locales
Magic

  `magic_clearhint` , `magic_clearhints` , `magic_methcall` , `magic_sethint` , `mg_dup` , `mg_localize` , `si_dup` , `ss_dup`

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

  `finalize_optree` , `newATTRSUB_x` , `newXS_len_flags` , `op_refcnt_lock` , `op_refcnt_unlock` , `optimize_optree` , `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` , `PadnameIsOUR` , `PadnameIsSTATE` , `PadnameOURSTASH` , `PadnameOUTER` , `PadnameTYPE` , `PAD_RESTORE_LOCAL` , `PAD_SAVE_LOCAL` , `PAD_SAVE_SETNULLPAD` , `PAD_SETSV` , `PAD_SET_CUR` , `PAD_SET_CUR_NOSAVE` , `PAD_SV` , `PAD_SVl` , `SAVECLEARSV` , `SAVECOMPPAD` , `SAVEPADSV`

Password and Group access
Paths to system commands
Prototype information
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_2bool` , `sv_2bool_flags` , `sv_2num` , `sv_2pvbyte_nolen` , `sv_2pvutf8_nolen` , `sv_2pv_nolen` , `sv_add_arena` , `sv_clean_all` , `sv_clean_objs` , `sv_free_arenas` , `sv_grow` , `sv_grow_fresh` , `sv_iv` , `sv_newref` , `sv_nv` , `sv_pv` , `sv_pvbyte` , `sv_pvbyten` , `sv_pvbyten_force` , `sv_pvn` , `sv_pvn_force` , `sv_pvutf8` , `sv_pvutf8n` , `sv_pvutf8n_force` , `sv_tainted` , `SvTHINKFIRST` , `sv_true` , `sv_untaint` , `sv_uv`

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` , `report_uninit` , `utf8n_to_uvuni` , `utf8_to_uvuni` , `utf8_to_uvuni_buf` , `uvoffuni_to_utf8_flags` , `uvuni_to_utf8_flags` , `valid_utf8_to_uvchr` , `variant_under_utf8_count`

Utility Functions

  `my_popen_list` , `my_socketpair`

Versioning
Warning and Dieing

  `PL_dowarn`

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
  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

  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

PROFILING
  Gprof Profiling

    -a, -b, -e routine, -f routine, -s, -z

  GCC gcov Profiling
  callgrind profiling

    --threshold, --auto

MISCELLANEOUS TRICKS
  PERL_DESTRUCT_LEVEL
  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

## perlpolicy - Various and sundry policies and commitments related to the Perl core

DESCRIPTION
GOVERNANCE
  Perl 5 Porters
MAINTENANCE AND SUPPORT
BACKWARD COMPATIBILITY AND DEPRECATION
  Terminology

    experimental, deprecated, discouraged, removed

MAINTENANCE BRANCHES
  Getting changes into a maint branch
CONTRIBUTED MODULES
  A Social Contract about Artistic Control
DOCUMENTATION
STANDARDS OF CONDUCT
CREDITS

## 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 Members

  Neil Bowers, Paul Evans, Ricardo Signes

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 Golden <xdg@xdg.me>, David Mitchell <davem@iabyn.com>, H. Merijn Brand <perl5@tux.freedom.nl>, Hugo van der Sanden <hv@crypt.org>, James E Keenan <jkeenan@cpan.org>, Jason McIntosh <jmac@jmac.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>

  Inactive Members

    Abhijit Menon-Sen <ams@toroid.org>, Andy Dougherty <doughera@lafayette.edu>, Jan Dubois <jan@jandubois.com>, 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.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) after `use 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

## perl5360delta, perldelta - 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) after `use 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

## 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 to `i` and `l` 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` and `Identifier_Type` supported
  It is now possible to write `qr/\p{Name=...}/`, or `qr!\p{na=/(SMILING|GRINNING) FACE/}!`
  Improvement of `POSIX::mblen()`, `mbtowc`, and `wctomb`
  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` and `POSIX::wcstombs` are removed
  A bug fix for `(?[...])` may have caused some patterns to no longer compile
  `\p{user-defined}` properties now always override official Unicode ones
  Modifiable variables are no longer permitted in constants
  Use of `vec` on strings with code points above 0xFF is forbidden
  Use of code points over 0xFF in string bitwise operators
  `Sys::Hostname::hostname()` does not accept arguments
  Plain "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 65534
  Unicode 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 fatal
  Delimiters must now be graphemes
  Some formerly deprecated uses of an unescaped left brace `"{"` in regular expression patterns are now illegal
  Previously 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-8
  Any 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 slices
  Experimentally, there are now alphabetic synonyms for some regular expression assertions
  Mixed Unicode scripts are now detectable
  In-place editing with `perl -i` is now safer
  Initialisation of aggregate state variables
  Full-size inode numbers
  The `sprintf` `%j` format size modifier is now available with pre-C99 compilers
  Close-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 Windows
  Default 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 illegal
  Opening the same symbol as both a file and directory handle is no longer allowed
  Use of bare `<<` to mean `<<""` is no longer allowed
  Setting $/ to a reference to a non-positive integer no longer allowed
  Unicode code points with values exceeding `IV_MAX` are now fatal
  The `B::OP::terse` method has been removed
  Use 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 illegal
  Backslash no longer escapes colon in PATH for the `-S` switch
  the -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 property
  Perl can now do default collation in UTF-8 locales on platforms that support it
  Better locale collation of strings containing embedded `NUL` characters
  `CORE` subroutines for hash and array functions callable via reference
  New 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 by `do`, 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 permissible
  `scalar(%hash)` return signature changed
  `keys` returned from an lvalue subroutine
  The `${^ENCODING}` facility has been removed
  `POSIX::tmpnam()` has been removed
  require ::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 expressions
  `qr/(?[ ])/` now works in UTF-8 locales
  Integer shift (`<<` and `>>`) now more explicitly defined
  printf and sprintf now allow reordered precision arguments
  More fields provided to `sigaction` callback with `SA_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 removed
  Lexical $_ has been removed
  `qr/\b{wb}/` is now tailored to Perl expectations
  Regular expression compilation errors
  `qr/\N{}/` now disallowed under `use re "strict"`
  Nested declarations are now disallowed
  The `/\C/` character class has been removed.
  `chdir('')` no longer chdirs home
  ASCII characters in variable names must now be all visible
  An off by one issue in `$Carp::MaxArgNums` has been fixed
  Only blanks and tabs are now allowed within `[...]` within `(?[...])`.
Deprecations
  Using code points above the platform's `IV_MAX` is now deprecated
  Doing bitwise operations on strings containing code points above 0xFF is deprecated
  `sysread()`, `syswrite()`, `recv()` and `send()` 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()` and `sort()` fixed for UTF-EBCDIC strings, EBCDIC `tr///` and `y///` fixed for `\N{}`, and `use 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 expressions
  Non-Capturing Regular Expression Flag
  `use re 'strict'`
  Unicode 7.0 (with correction) is now supported
  `use locale` can restrict which locale categories are affected
  Perl now supports POSIX 2008 locale currency additions
  Better heuristics on older platforms for determining locale UTF-8ness
  Aliasing via reference
  `prototype` with no arguments
  New `:const` subroutine attribute
  `fileno` now works on directory handles
  List 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 available
  The 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 subs
  `use encoding` is now lexical
  List slices returning empty lists
  `\N{}` with a sequence of multiple spaces is now a fatal error
  `use UNIVERSAL '...'` is now a fatal error
  In double-quotish `\cX`, X must now be a printable ASCII character
  Splitting the tokens `(?` and `(*` in regular expressions is now a fatal compilation error.
  `qr/foo/x` now ignores all Unicode pattern white space
  Comment lines within `(?[ ])` are now ended only by a `\n`
  `(?[...])` operators now follow standard Perl precedence
  Omitting `%` and `@` on hash and array names is no longer permitted
  `"$!"` text is now in English outside the scope of `use locale`
  `"$!"` text will be returned in UTF-8 when appropriate
  Support for `?PATTERN?` without explicit operator has been removed
  `defined(@array)` and `defined(%hash)` are now fatal errors
  Using a hash or an array as a reference are now fatal errors
  Changes to the `*` prototype
Deprecations
  Setting `${^ENCODING}` to anything but `undef`
  Use of non-graphic characters in single-character variable names
  Inlining of `sub () { $var }` with observable side-effects
  Use of multiple `/x` regexp modifiers
  Using a NO-BREAK space in a character alias for `\N{...}` is now deprecated
  A literal `"{"` should now be escaped in a pattern
  Making 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 a `prototype` attribute
  More consistent prototype parsing
  `rand` now uses a consistent random number generator
  New slice syntax
  Experimental Postfix Dereferencing
  Unicode 6.3 now supported
  New `\p{Unicode}` regular expression pattern property
  Better 64-bit support
  `use locale` now works on UTF-8 locales
  `use locale` now compiles on systems without locale ability
  More 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 subroutines
  Quote-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 points
  Data::Dumper's output may change
  Locale decimal point character no longer leaks outside of `use locale` scope
  Assignments of Windows sockets error codes to $! now prefer errno.h values over WSAGetLastError() values
  Functions `PerlIO_vsprintf` and `PerlIO_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 documentation
  `Locale::Maketext` allowed code injection via a malicious template
  Avoid calling memset with a negative count
Incompatible Changes
  See also: hash overhaul
  An unknown character name in `\N{...}` is now a syntax error
  Formerly deprecated characters in `\N{}` character name aliases are now errors.
  `\N{BELL}` now refers to U+1F514 instead of U+0007
  New 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 reworked
  Stricter parsing of substitution replacement
  `given` now aliases the global `$_`
  The smartmatch family of features are now experimental
  Lexical `$_` is now experimental
  readline() with `$/ = \N` now reads N characters, not N bytes
  Overridden `glob` is now passed one argument
  Here 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` and `our sub`
  Defined values stored in environment are forced to byte strings
  `require` dies for unreadable files
  `gv_fetchmeth_*` and SUPER
  `split`'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 expressions
  Pre-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` Namespace
  Other Changes
Security
  Use `is_utf8_char_buf()` and not `is_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()` and `utf8_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 objects
  Two 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()` and `xpipe_anon()`
  `$$` no longer caches PID
  `$$` and `getppid()` no longer emulate POSIX semantics under LinuxThreads
  `$<`, `$>`, `$(` and `$)` are no longer cached
  Which 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` and `when`
  The `glob` operator
  Lvalue subroutines
  Overloading
  Prototypes of built-in keywords
  Regular expressions
  Smartmatching
  The `sort` operator
  The `substr` operator
  Support 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 ithreads
  Freeing weak references
  Lexical array and hash assignments
  `@_` uses less memory
  Size optimisations to SV and HV structures
  Memory consumption improvements to Exporter
  Memory savings for weak references
  `%+` and `%-` use less memory
  Multiple 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` and `CPERLscope`

  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` syntax
  The `...` operator
  Implicit 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 escape
  DTrace support
  Support for `configure_requires` in CPAN module metadata
  `each`, `keys`, `values` are now more flexible
  `when` 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` pragma
  Parallel 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 removed
  substr() 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 tainted
  Tainting and printf
  undef and signal handlers
  strictures and dereferencing in defined()
  `(?p{})` has been removed
  Pseudo-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
Modules and Pragmata
  Upgrading individual core modules
  Pragmata Changes

    `feature`, `mro`, Scoping of the `sort` pragma, Scoping of `bignum`, `bigint`, `bigrat`, `base`, `strict` and `warnings`, `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` and `d_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 removed
  `av_*` 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 overridable
  simple 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 evals
  Other 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 subroutine
  Cannot make the non-overridable builtin %s fatal
  Unrecognized 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` enhancements
  `perlivp` 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-time
  Socket 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` allowed
  File globbing implemented internally
  Support for CHECK blocks
  POSIX character class syntax [: :] supported
  Better pseudo-random number generator
  Improved `qw//` operator
  Better 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` and `do` may be overridden
  $^X variables may now have names longer than one character
  New variable $^C reflects `-c` switch
  New 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 optimized
  Optimized 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` flag
  Enhanced 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 '...'` improvements
  All 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 under `use 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` switch
  Potential 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 form `1.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 now `PERL_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` allowed
  File globbing implemented internally
  Support for CHECK blocks
  POSIX character class syntax [: :] supported
  Better pseudo-random number generator
  Improved `qw//` operator
  Better 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` and `do` may be overridden
  $^X variables may now have names longer than one character
  New variable $^C reflects `-c` switch
  New 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 optimized
  Optimized 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` flag
  Enhanced Installation Directories
Platform specific changes
  Supported platforms
  DOS
  OS390 (OpenEdition MVS)
  VMS
  Win32
Significant bug fixes
  <HANDLE> on empty files
  `eval '...'` improvements
  All 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 under `use 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` switch
  Potential 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 form `1.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 now `PERL_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 module
  Pseudo-hashes are supported
  `EXPR foreach EXPR` is supported
  Keywords can be globally overridden
  `$^E` is meaningful on Win32
  `foreach (1..1000000)` optimized
  `Foo::` can be used as implicitly quoted package name
  `exists $Foo::{Bar::}` tests existence of a package
  Better 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 internally
  New `INIT` keyword
  New `lock` keyword
  New `qr//` operator
  `our` is now a reserved word
  Tied 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 ?*+{}, nested `sub{}` 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` and `perl_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

## perlbook - Books about and related to Perl

DESCRIPTION
  The most popular books

    Programming Perl (the "Camel Book"):, The Perl Cookbook (the "Ram Book"):, Learning Perl (the "Llama Book"), Intermediate Perl (the "Alpaca Book")

  References

    Perl 5 Pocket Reference, Perl Debugger Pocket Reference, Regular Expression Pocket Reference

  Tutorials

    Beginning Perl, Learning Perl (the "Llama Book"), Intermediate Perl (the "Alpaca Book"), Mastering Perl, Effective Perl Programming

  Task-Oriented

    Writing Perl Modules for CPAN, The Perl Cookbook, Automating System Administration with Perl, Real World SQL Server Administration with Perl

  Special Topics

    Regular Expressions Cookbook, Programming the Perl DBI, Perl Best Practices, Higher-Order Perl, Mastering Regular Expressions, Network Programming with Perl, Perl Template Toolkit, Object Oriented Perl, Data Munging with Perl, Mastering Perl/Tk, Extending and Embedding Perl, Pro Perl Debugging

  Free (as in beer) books
  Other interesting, non-Perl books

    Programming Pearls, More Programming Pearls

  A note on freshness
  Get your book listed

## perlcommunity - a brief overview of the Perl community

DESCRIPTION
  Where to Find the Community
  Mailing Lists and Newsgroups
  IRC
  Websites

    https://perl.com/, http://blogs.perl.org/, https://perl.theplanetarium.org/, https://perlweekly.com/, https://www.perlmonks.org/, https://stackoverflow.com/, http://prepan.org/

  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, The "const" attribute, use re 'strict';, Declaring a reference to a variable, There is an `installhtml` 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, for loop with multiple iteration variables, 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 infix `isa` operator, Subroutine signatures, Regular Expression Set Operations

  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 attribute `unique`, 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`

  Suspicious Warnings on Cygwin

    Win9x and `d_eofnblk`, Compiler/Preprocessor defines

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, `chown()`, 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 DOS.
  Cannot 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` files
  PDF 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 external
  Problems 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` or `TEMP`
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` and `ENDLIBPATH`, . from `LIBPATH`

  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 5
  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/, http://mingw-w64.org

  Setting Up Perl on Windows

    Make, Command Shell, Microsoft Visual C++, Microsoft Visual C++ 2013-2022 Community Edition, 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, CPAN Ratings

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, CPAN Ratings

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, CPAN Ratings

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, CPAN Ratings

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
FUNCTIONS
  true
  false
  is_bool
  weaken
  unweaken
  is_weak
  blessed
  refaddr
  reftype
  created_as_string
  created_as_number
  ceil
  floor
  indexed
  trim
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` Pragma
  The 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/or `STDOUT` individually
  The `: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` and `STDOUT` get the encoded stream, literals in regex that are longer than 127 bytes, EBCDIC, `format`, See also "CAVEATS"

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, `for_list` - allows iterating over multiple values at a time with `for`, `isa` - allow the use of the `isa` infix operator, `lexical_topic` - allow the use of lexical `$_` via `my $_`, `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 of `try` and `catch`, `win32_perlio` - allows the use of the :win32 IO layer

  Ordering 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
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+

## locale - Perl pragma to use or avoid POSIX locales for built-in operations

WARNING
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

    https://www.python.org/download/releases/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

## 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` (see `perl -V`), The environment variable `PERL_SIGNALS` is set to `unsafe` (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

## threads::shared - Perl extension for sharing data structures between threads

VERSION
SYNOPSIS
DESCRIPTION
EXPORT
FUNCTIONS

  share VARIABLE, shared_clone REF, is_shared VARIABLE, lock VARIABLE, cond_wait VARIABLE, cond_wait CONDVAR, LOCKVAR, cond_timedwait VARIABLE, ABS_TIMEOUT, cond_timedwait CONDVAR, ABS_TIMEOUT, LOCKVAR, cond_signal VARIABLE, cond_broadcast VARIABLE

OBJECTS
NOTES
WARNINGS

  cond_broadcast() called on unlocked variable, cond_signal() called on unlocked variable

BUGS AND LIMITATIONS
SEE ALSO
AUTHOR
LICENSE

## 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

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, A comparison of GNU and POSIX tar standards; `http://www.delorie.com/gnu/docs/tar/tar_114.html`, GNU tar intends to switch to POSIX compatibility, A Comparison between various tar implementations

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, object_2svref

  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, FLAGS, TYPE, SvSTASH, OURSTASH, PROTOCV, COP_SEQ_RANGE_LOW, COP_SEQ_RANGE_HIGH, PARENT_PAD_INDEX, PARENT_FAKELEX_FLAGS

  $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, The `force` and the `fforce` 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, Distribution
  Integrating 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
  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::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 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 $flags = Compress::Raw::Zlib::zlibCompileFlags();
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

_

  `_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__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_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_Gconvert`, `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_otherlibdirs`, `d_phostname`, `d_pipe`, `d_pipe2`, `d_poll`, `d_portable`, `d_prctl`, `d_prctl_set_name`, `d_PRId64`, `d_PRIeldbl`, `d_PRIEUldbl`, `d_PRIfldbl`, `d_PRIFUldbl`, `d_PRIgldbl`, `d_PRIGUldbl`, `d_PRIi64`, `d_printf_format_null`, `d_PRIo64`, `d_PRIu64`, `d_PRIx64`, `d_PRIXU64`, `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_SCNfldbl`, `d_seekdir`, `d_select`, `d_sem`, `d_semctl`, `d_semctl_semid_ds`, `d_semctl_semun`, `d_semget`, `d_semop`, `d_sendmsg`, `d_setegid`, `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_thread_safe_nl_langinfo_l`, `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

  `fflushall`, `fflushNULL`, `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`, `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_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`, `nv_overflows_integers_at`, `nv_preserves_uv_bits`, `nveformat`, `nvEUformat`, `nvfformat`, `nvFUformat`, `nvgformat`, `nvGUformat`, `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`

P

  `PERL_API_REVISION`, `PERL_API_SUBVERSION`, `PERL_API_VERSION`, `PERL_CONFIG_SH`, `PERL_PATCHLEVEL`, `perl_patchlevel`, `PERL_REVISION`, `perl_static_inline`, `PERL_SUBVERSION`, `perl_thread_local`, `PERL_VERSION`, `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

  `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`, `sGMTIME_max`, `sGMTIME_min`, `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`, `sLOCALTIME_max`, `sLOCALTIME_min`, `smail`, `so`, `sockethdr`, `socketlib`, `socksizetype`, `sort`, `spackage`, `spitshell`, `sPRId64`, `sPRIeldbl`, `sPRIEUldbl`, `sPRIfldbl`, `sPRIFUldbl`, `sPRIgldbl`, `sPRIGUldbl`, `sPRIi64`, `sPRIo64`, `sPRIu64`, `sPRIx64`, `sPRIXU64`, `srand48_r_proto`, `srandom_r_proto`, `src`, `sSCNfldbl`, `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`, `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`, `u32size`, `u32type`, `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`, `uvoformat`, `uvsize`, `uvtype`, `uvuformat`, `uvxformat`, `uvXUformat`

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

## 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::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

## 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::Symbols, 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

## 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 Friends
  Playing 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_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, 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, $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

`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_inputmap

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 - load the C Fcntl.h defines

SYNOPSIS
DESCRIPTION
NOTE
EXPORTED SYMBOLS

## 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` subroutine
  Using 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
KNOWN ISSUES
AUTHORS
COPYRIGHT

## 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::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
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 hashes
  Weakrefs 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 - functions for dealing with RFC3066-style language tags

SYNOPSIS
DESCRIPTION

the function is_language_tag($lang1)

the function extract_language_tags($whatever)

the function same_language_tag($lang1, $lang2)

the function similarity_language_tag($lang1, $lang2)

the function is_dialect_of($lang1, $lang2)

the function super_languages($lang1)

the function locale2language_tag($locale_identifier)

the function encode_language_tag($lang1)

the function alternate_language_tags($lang1)

the function @langs = panic_languages(@accept_languages)

the function implicate_supers( ...languages... ), the function implicate_supers_strictly( ...languages... )

ABOUT LOWERCASING
ABOUT UNICODE PLAINTEXT LANGUAGE TAGS
SEE ALSO
COPYRIGHT
AUTHOR

## I18N::LangTags::Detect - detect the user's language preferences

SYNOPSIS
DESCRIPTION
FUNCTIONS
ENVIRONMENT
SEE ALSO
COPYRIGHT
AUTHOR

## I18N::LangTags::List -- tags and names for human languages

SYNOPSIS
DESCRIPTION
ABOUT LANGUAGE TAGS
LIST OF LANGUAGES

  {ab} : Abkhazian, {ace} : Achinese, {ach} : Acoli, {ada} : Adangme, {ady} : Adyghe, {aa} : Afar, {afh} : Afrihili, {af} : Afrikaans, [{afa} : Afro-Asiatic (Other)], {ak} : Akan, {akk} : Akkadian, {sq} : Albanian, {ale} : Aleut, [{alg} : Algonquian languages], [{tut} : Altaic (Other)], {am} : Amharic, {i-ami} : Ami, [{apa} : Apache languages], {ar} : Arabic, {arc} : Aramaic, {arp} : Arapaho, {arn} : Araucanian, {arw} : Arawak, {hy} : Armenian, {an} : Aragonese, [{art} : Artificial (Other)], {ast} : Asturian, {as} : Assamese, [{ath} : Athapascan languages], [{aus} : Australian languages], [{map} : Austronesian (Other)], {av} : Avaric, {ae} : Avestan, {awa} : Awadhi, {ay} : Aymara, {az} : Azerbaijani, {ban} : Balinese, [{bat} : Baltic (Other)], {bal} : Baluchi, {bm} : Bambara, [{bai} : Bamileke languages], {bad} : Banda, [{bnt} : Bantu (Other)], {bas} : Basa, {ba} : Bashkir, {eu} : Basque, {btk} : Batak (Indonesia), {bej} : Beja, {be} : Belarusian, {bem} : Bemba, {bn} : Bengali, [{ber} : Berber (Other)], {bho} : Bhojpuri, {bh} : Bihari, {bik} : Bikol, {bin} : Bini, {bi} : Bislama, {bs} : Bosnian, {bra} : Braj, {br} : Breton, {bug} : Buginese, {bg} : Bulgarian, {i-bnn} : Bunun, {bua} : Buriat, {my} : Burmese, {cad} : Caddo, {car} : Carib, {ca} : Catalan, [{cau} : Caucasian (Other)], {ceb} : Cebuano, [{cel} : Celtic (Other)], [{cai} : Central American Indian (Other)], {chg} : Chagatai, [{cmc} : Chamic languages], {ch} : Chamorro, {ce} : Chechen, {chr} : Cherokee, {chy} : Cheyenne, {chb} : Chibcha, {ny} : Chichewa, {zh} : Chinese, {chn} : Chinook Jargon, {chp} : Chipewyan, {cho} : Choctaw, {cu} : Church Slavic, {chk} : Chuukese, {cv} : Chuvash, {cop} : Coptic, {kw} : Cornish, {co} : Corsican, {cr} : Cree, {mus} : Creek, [{cpe} : English-based Creoles and pidgins (Other)], [{cpf} : French-based Creoles and pidgins (Other)], [{cpp} : Portuguese-based Creoles and pidgins (Other)], [{crp} : Creoles and pidgins (Other)], {hr} : Croatian, [{cus} : Cushitic (Other)], {cs} : Czech, {dak} : Dakota, {da} : Danish, {dar} : Dargwa, {day} : Dayak, {i-default} : Default (Fallthru) Language, {del} : Delaware, {din} : Dinka, {dv} : Divehi, {doi} : Dogri, {dgr} : Dogrib, [{dra} : Dravidian (Other)], {dua} : Duala, {nl} : Dutch, {dum} : Middle Dutch (ca.1050-1350), {dyu} : Dyula, {dz} : Dzongkha, {efi} : Efik, {egy} : Ancient Egyptian, {eka} : Ekajuk, {elx} : Elamite, {en} : English, {enm} : Old English (1100-1500), {ang} : Old English (ca.450-1100), {i-enochian} : Enochian (Artificial), {myv} : Erzya, {eo} : Esperanto, {et} : Estonian, {ee} : Ewe, {ewo} : Ewondo, {fan} : Fang, {fat} : Fanti, {fo} : Faroese, {fj} : Fijian, {fi} : Finnish, [{fiu} : Finno-Ugrian (Other)], {fon} : Fon, {fr} : French, {frm} : Middle French (ca.1400-1600), {fro} : Old French (842-ca.1400), {fy} : Frisian, {fur} : Friulian, {ff} : Fulah, {gaa} : Ga, {gd} : Scots Gaelic, {gl} : Gallegan, {lg} : Ganda, {gay} : Gayo, {gba} : Gbaya, {gez} : Geez, {ka} : Georgian, {de} : German, {gmh} : Middle High German (ca.1050-1500), {goh} : Old High German (ca.750-1050), [{gem} : Germanic (Other)], {gil} : Gilbertese, {gon} : Gondi, {gor} : Gorontalo, {got} : Gothic, {grb} : Grebo, {grc} : Ancient Greek, {el} : Modern Greek, {gn} : Guarani, {gu} : Gujarati, {gwi} : Gwich'in, {hai} : Haida, {ht} : Haitian, {ha} : Hausa, {haw} : Hawaiian, {he} : Hebrew, {hz} : Herero, {hil} : Hiligaynon, {him} : Himachali, {hi} : Hindi, {ho} : Hiri Motu, {hit} : Hittite, {hmn} : Hmong, {hu} : Hungarian, {hup} : Hupa, {iba} : Iban, {is} : Icelandic, {io} : Ido, {ig} : Igbo, {ijo} : Ijo, {ilo} : Iloko, [{inc} : Indic (Other)], [{ine} : Indo-European (Other)], {id} : Indonesian, {inh} : Ingush, {ia} : Interlingua (International Auxiliary Language Association), {ie} : Interlingue, {iu} : Inuktitut, {ik} : Inupiaq, [{ira} : Iranian (Other)], {ga} : Irish, {mga} : Middle Irish (900-1200), {sga} : Old Irish (to 900), [{iro} : Iroquoian languages], {it} : Italian, {ja} : Japanese, {jv} : Javanese, {jrb} : Judeo-Arabic, {jpr} : Judeo-Persian, {kbd} : Kabardian, {kab} : Kabyle, {kac} : Kachin, {kl} : Kalaallisut, {xal} : Kalmyk, {kam} : Kamba, {kn} : Kannada, {kr} : Kanuri, {krc} : Karachay-Balkar, {kaa} : Kara-Kalpak, {kar} : Karen, {ks} : Kashmiri, {csb} : Kashubian, {kaw} : Kawi, {kk} : Kazakh, {kha} : Khasi, {km} : Khmer, [{khi} : Khoisan (Other)], {kho} : Khotanese, {ki} : Kikuyu, {kmb} : Kimbundu, {rw} : Kinyarwanda, {ky} : Kirghiz, {i-klingon} : Klingon, {kv} : Komi, {kg} : Kongo, {kok} : Konkani, {ko} : Korean, {kos} : Kosraean, {kpe} : Kpelle, {kro} : Kru, {kj} : Kuanyama, {kum} : Kumyk, {ku} : Kurdish, {kru} : Kurukh, {kut} : Kutenai, {lad} : Ladino, {lah} : Lahnda, {lam} : Lamba, {lo} : Lao, {la} : Latin, {lv} : Latvian, {lb} : Letzeburgesch, {lez} : Lezghian, {li} : Limburgish, {ln} : Lingala, {lt} : Lithuanian, {nds} : Low German, {art-lojban} : Lojban (Artificial), {loz} : Lozi, {lu} : Luba-Katanga, {lua} : Luba-Lulua, {lui} : Luiseno, {lun} : Lunda, {luo} : Luo (Kenya and Tanzania), {lus} : Lushai, {mk} : Macedonian, {mad} : Madurese, {mag} : Magahi, {mai} : Maithili, {mak} : Makasar, {mg} : Malagasy, {ms} : Malay, {ml} : Malayalam, {mt} : Maltese, {mnc} : Manchu, {mdr} : Mandar, {man} : Mandingo, {mni} : Manipuri, [{mno} : Manobo languages], {gv} : Manx, {mi} : Maori, {mr} : Marathi, {chm} : Mari, {mh} : Marshall, {mwr} : Marwari, {mas} : Masai, [{myn} : Mayan languages], {men} : Mende, {mic} : Micmac, {min} : Minangkabau, {i-mingo} : Mingo, [{mis} : Miscellaneous languages], {moh} : Mohawk, {mdf} : Moksha, {mo} : Moldavian, [{mkh} : Mon-Khmer (Other)], {lol} : Mongo, {mn} : Mongolian, {mos} : Mossi, [{mul} : Multiple languages], [{mun} : Munda languages], {nah} : Nahuatl, {nap} : Neapolitan, {na} : Nauru, {nv} : Navajo, {nd} : North Ndebele, {nr} : South Ndebele, {ng} : Ndonga, {ne} : Nepali, {new} : Newari, {nia} : Nias, [{nic} : Niger-Kordofanian (Other)], [{ssa} : Nilo-Saharan (Other)], {niu} : Niuean, {nog} : Nogai, {non} : Old Norse, [{nai} : North American Indian], {no} : Norwegian, {nb} : Norwegian Bokmal, {nn} : Norwegian Nynorsk, [{nub} : Nubian languages], {nym} : Nyamwezi, {nyn} : Nyankole, {nyo} : Nyoro, {nzi} : Nzima, {oc} : Occitan (post 1500), {oj} : Ojibwa, {or} : Oriya, {om} : Oromo, {osa} : Osage, {os} : Ossetian; Ossetic, [{oto} : Otomian languages], {pal} : Pahlavi, {i-pwn} : Paiwan, {pau} : Palauan, {pi} : Pali, {pam} : Pampanga, {pag} : Pangasinan, {pa} : Panjabi, {pap} : Papiamento, [{paa} : Papuan (Other)], {fa} : Persian, {peo} : Old Persian (ca.600-400 B.C.), [{phi} : Philippine (Other)], {phn} : Phoenician, {pon} : Pohnpeian, {pl} : Polish, {pt} : Portuguese, [{pra} : Prakrit languages], {pro} : Old Provencal (to 1500), {ps} : Pushto, {qu} : Quechua, {rm} : Raeto-Romance, {raj} : Rajasthani, {rap} : Rapanui, {rar} : Rarotongan, [{qaa - qtz} : Reserved for local use.], [{roa} : Romance (Other)], {ro} : Romanian, {rom} : Romany, {rn} : Rundi, {ru} : Russian, [{sal} : Salishan languages], {sam} : Samaritan Aramaic, {se} : Northern Sami, {sma} : Southern Sami, {smn} : Inari Sami, {smj} : Lule Sami, {sms} : Skolt Sami, [{smi} : Sami languages (Other)], {sm} : Samoan, {sad} : Sandawe, {sg} : Sango, {sa} : Sanskrit, {sat} : Santali, {sc} : Sardinian, {sas} : Sasak, {sco} : Scots, {sel} : Selkup, [{sem} : Semitic (Other)], {sr} : Serbian, {srr} : Serer, {shn} : Shan, {sn} : Shona, {sid} : Sidamo, {sgn-...} : Sign Languages, {bla} : Siksika, {sd} : Sindhi, {si} : Sinhalese, [{sit} : Sino-Tibetan (Other)], [{sio} : Siouan languages], {den} : Slave (Athapascan), [{sla} : Slavic (Other)], {sk} : Slovak, {sl} : Slovenian, {sog} : Sogdian, {so} : Somali, {son} : Songhai, {snk} : Soninke, {wen} : Sorbian languages, {nso} : Northern Sotho, {st} : Southern Sotho, [{sai} : South American Indian (Other)], {es} : Spanish, {suk} : Sukuma, {sux} : Sumerian, {su} : Sundanese, {sus} : Susu, {sw} : Swahili, {ss} : Swati, {sv} : Swedish, {syr} : Syriac, {tl} : Tagalog, {ty} : Tahitian, [{tai} : Tai (Other)], {tg} : Tajik, {tmh} : Tamashek, {ta} : Tamil, {i-tao} : Tao, {tt} : Tatar, {i-tay} : Tayal, {te} : Telugu, {ter} : Tereno, {tet} : Tetum, {th} : Thai, {bo} : Tibetan, {tig} : Tigre, {ti} : Tigrinya, {tem} : Timne, {tiv} : Tiv, {tli} : Tlingit, {tpi} : Tok Pisin, {tkl} : Tokelau, {tog} : Tonga (Nyasa), {to} : Tonga (Tonga Islands), {tsi} : Tsimshian, {ts} : Tsonga, {i-tsu} : Tsou, {tn} : Tswana, {tum} : Tumbuka, [{tup} : Tupi languages], {tr} : Turkish, {ota} : Ottoman Turkish (1500-1928), {crh} : Crimean Turkish, {tk} : Turkmen, {tvl} : Tuvalu, {tyv} : Tuvinian, {tw} : Twi, {udm} : Udmurt, {uga} : Ugaritic, {ug} : Uighur, {uk} : Ukrainian, {umb} : Umbundu, {und} : Undetermined, {ur} : Urdu, {uz} : Uzbek, {vai} : Vai, {ve} : Venda, {vi} : Vietnamese, {vo} : Volapuk, {vot} : Votic, [{wak} : Wakashan languages], {wa} : Walloon, {wal} : Walamo, {war} : Waray, {was} : Washo, {cy} : Welsh, {wo} : Wolof, {x-...} : Unregistered (Semi-Private Use), {xh} : Xhosa, {sah} : Yakut, {yao} : Yao, {yap} : Yapese, {ii} : Sichuan Yi, {yi} : Yiddish, {yo} : Yoruba, [{ypk} : Yupik languages], {znd} : Zande, [{zap} : Zapotec], {zen} : Zenaga, {za} : Zhuang, {zu} : Zulu, {zun} : Zuni

SEE ALSO
COPYRIGHT AND DISCLAIMER
AUTHOR

## I18N::Langinfo - query locale information

SYNOPSIS
DESCRIPTION
  For systems without `nl_langinfo`

    `ERA`, `CODESET`, `YESEXPR`, `YESSTR`, `NOEXPR`, `NOSTR`, `D_FMT`, `T_FMT`, `D_T_FMT`, `CRNCYSTR`, `ALT_DIGITS`, `ERA_D_FMT`, `ERA_T_FMT`, `ERA_D_T_FMT`, `T_FMT_AMPM`

  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

  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

  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

  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

  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, 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

  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 ), binmode( [LAYER] )

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 ] ), $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`

  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

  Examples
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`

  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`

  Examples
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`

  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`

  Examples
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`

  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

  Examples
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`

  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`

  Examples
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`

  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`

  Examples
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`

  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`

  Examples
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
  Walking through a zip file
  Unzipping a complete zip file to disk
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::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

## Internals - Reserved special namespace for internals related functions

SYNOPSIS
DESCRIPTION
  FUNCTIONS

    SvREFCNT(THING [, $value]), SvREADONLY(THING, [, $value]), hv_clear_placeholders(%hash)

AUTHOR
SEE ALSO

## 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
  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 a `FREEZE` method, 2. `convert_blessed` is enabled and the object has a `TO_JSON` method, 3. `allow_bignum` is enabled and the object is a `Math::BigInt` or `Math::BigFloat`, 4. `allow_blessed` is enabled, 5. none of the above

ENCODING/CODESET FLAG NOTES

  `utf8` flag disabled, `utf8` flag enabled, `latin1` or `ascii` 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(), 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
  Using Math::BigInt::Lite
EXPORTS
CAVEATS

  stringify, bstr(), brsft(), Modifying and =, precision() vs. accuracy()

BUGS
SUPPORT

  GitHub, RT: CPAN's request tracker, MetaCPAN, CPAN Testers Matrix, CPAN Ratings, The Bignum mailing list, Post to mailing list, View mailing list, Subscribe/Unsubscribe

LICENSE
SEE ALSO
AUTHORS

## Math::BigInt - arbitrary size integer math package

SYNOPSIS
DESCRIPTION
  Input
  Output
METHODS
  Configuration methods

    accuracy(), precision(), div_scale(), round_mode(), 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()

  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(), bdiv(), btdiv(), bmod(), btmod(), bmodinv(), bmodpow(), bpow(), blog(), bexp(), bnok(), buparrow(), uparrow(), backermann(), ackermann(), bsin(), bcos(), batan(), batan2(), bsqrt(), broot(), bfac(), bdfac(), btfac(), bmfac(), bfib(), blucas(), brsft(), blsft()

  Bitwise methods

    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(), 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, CPAN Ratings, The Bignum mailing list, Post to mailing list, View mailing list, Subscribe/Unsubscribe

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, CPAN Ratings

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->_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

  RT: CPAN's request tracker, AnnoCPAN: Annotated CPAN documentation, CPAN Ratings, MetaCPAN, CPAN Testers Matrix, The Bignum mailing list, Post to mailing list, View mailing list, Subscribe/Unsubscribe

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, CPAN Ratings

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
AUTHORS
LICENSE

## Memoize - Make functions faster by trading space for time

SYNOPSIS
DESCRIPTION
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
MAILING LIST
AUTHOR
COPYRIGHT AND LICENSE
THANK YOU

## 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::ExpireFile - test for Memoize expiration semantics

DESCRIPTION

## Memoize::ExpireTest - test for Memoize expiration semantics

DESCRIPTION

## Memoize::NDBM_File - glue to provide EXISTS for NDBM_File for Storable use

DESCRIPTION

## Memoize::SDBM_File - glue to provide EXISTS for SDBM_File for Storable use

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` and `autoload`
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)` or `is_indexable()`
SUPPORT
AUTHOR
CONTRIBUTORS
COPYRIGHT & LICENSE

## 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`

EXAMPLES

  https://www.csh.rit.edu/~adam/Progs/

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

## 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`, `fclose`, `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

  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

  center, date, errors, fixed, fixedbold, fixeditalic, fixedbolditalic, lquote, rquote, name, nourls, quotes, release, section, stderr, utf8

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

BUGS
CAVEATS
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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@cpan.org`, Karl Williamson `khw@cpan.org`, Gabor Szabo `szabgab@gmail.com`, Shawn H Corey `SHCOREY 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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@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 Pearcey `hdp@cpan.org`, David E. Wheeler `dwheeler@cpan.org`

## Pod::Text - Convert POD data to formatted text

SYNOPSIS
DESCRIPTION

  alt, code, errors, indent, loose, margin, nourls, quotes, sentence, stderr, utf8, width

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

BUGS
CAVEATS
NOTES
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO

## Pod::Text::Color - Convert POD data to formatted color ASCII text

SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO

## Pod::Text::Overstrike - Convert POD data to formatted overstrike text

SYNOPSIS
DESCRIPTION
BUGS
AUTHOR
COPYRIGHT AND LICENSE
SEE ALSO

## Pod::Text::Termcap - Convert POD data to ASCII text with format escapes

SYNOPSIS
DESCRIPTION
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` string

  Formatting 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

## 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", "runtests", "summary"

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::Harness::Env - Parsing harness related environmental variables where appropriate

VERSION
SYNOPSIS
DESCRIPTION
METHODS

  create( \%args )

ENVIRONMENTAL VARIABLES

  `HARNESS_PERL_SWITCHES`, `HARNESS_VERBOSE`, `HARNESS_SUBCLASS`, `HARNESS_OPTIONS`, `j<n>`, `c`, `a<file.tgz>`, `fPackage-With-Dashes`, `HARNESS_TIMER`, `HARNESS_COLOR`, `HARNESS_IGNORE_EXIT`

## 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` methods
  `pragma` methods
  `comment` methods
  `bailout` methods
  `unknown` methods
  `test` 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

## 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 effected by this flag, Things that are effected by this flag, Things that are formatter dependant

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_diabled, 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)

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::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::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::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::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::Trace - Legacy wrapper fro Test2::EventFacet::Trace.

DESCRIPTION
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()` and `explain()`

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
  `recsep`
  `autochomp`
  `mode`
  `memory`
  `dw_size`
  Option Format
Public Methods
  `flock`
  `autochomp`
  `defer`, `flush`, `discard`, and `autodefer`
  `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()` and `timegm_posix()`
  `timelocal_modern()` and `timegm_modern()`
  `timelocal()` and `timegm()`
  `timelocal_nocheck()` and `timegm_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 Win32
  Use 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 this `I` 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

## Win32 - Interfaces to some Win32 API Functions

DESCRIPTION
  Alphabetical Listing of Win32 Functions

    Win32::AbortSystemShutdown(MACHINE), Win32::BuildNumber(), Win32::CopyFile(FROM, TO, OVERWRITE), Win32::CreateDirectory(DIRECTORY), Win32::CreateFile(FILE), Win32::DomainName(), Win32::ExpandEnvironmentStrings(STRING), Win32::FormatMessage(ERRORCODE), Win32::FsType(), Win32::FreeLibrary(HANDLE), Win32::GetACP(), Win32::GetANSIPathName(FILENAME), Win32::GetArchName(), Win32::GetChipName(), Win32::GetChipArch(), Win32::GetConsoleCP(), Win32::GetConsoleOutputCP(), Win32::GetCwd(), Win32::GetCurrentProcessId(), Win32::GetCurrentThreadId(), Win32::GetFileVersion(FILENAME), Win32::GetFolderPath(FOLDER [, CREATE]), Win32::GetFullPathName(FILENAME), Win32::GetLastError(), Win32::GetLongPathName(PATHNAME), Win32::GetNextAvailDrive(), Win32::GetOEMCP(), Win32::GetOSDisplayName(), Win32::GetOSName(), Win32::GetOSVersion(), Win32::GetShortPathName(PATHNAME), Win32::GetSystemMetrics(INDEX), Win32::GetProcAddress(INSTANCE, PROCNAME), Win32::GetProcessPrivileges([PID]), Win32::GetProductInfo(OSMAJOR, OSMINOR, SPMAJOR, SPMINOR), Win32::GetTickCount(), Win32::GuidGen(), Win32::HttpGetFile(URL, FILENAME [, IGNORE_CERT_ERRORS]), Win32::InitiateSystemShutdown, Win32::IsAdminUser(), Win32::IsDeveloperModeEnabled(), Win32::IsSymlinkCreationAllowed(), Win32::IsWinNT(), Win32::IsWin95(), Win32::LoadLibrary(LIBNAME), Win32::LoginName(), Win32::LookupAccountName(SYSTEM, ACCOUNT, DOMAIN, SID, SIDTYPE), Win32::LookupAccountSID(SYSTEM, SID, ACCOUNT, DOMAIN, SIDTYPE), Win32::MsgBox(MESSAGE [, FLAGS [, TITLE]]), Win32::NodeName(), Win32::OutputDebugString(STRING), Win32::RegisterServer(LIBRARYNAME), Win32::SetChildShowWindow(SHOWWINDOW), Win32::SetConsoleCP(ID), Win32::SetConsoleOutputCP(ID), Win32::SetCwd(NEWDIRECTORY), Win32::SetLastError(ERROR), Win32::Sleep(TIME), Win32::Spawn(COMMAND, ARGS, PID), Win32::UnregisterServer(LIBRARYNAME)

CAVEATS
  Short Path Names

## Win32API::File - Low-level access to Win32 system API calls for files/dirs.

SYNOPSIS
DESCRIPTION
  Object Oriented/Tied Handle Interface
  Exports

    `":Func"`, attrLetsToBits, `$uBits= attrLetsToBits( $sAttributeLetters )`, `"a"`, `"c"`, `"h"`, `"o"`, `"r"`, `"s"`, `"t"`, createFile, `$hObject= createFile( $sPath )`, `$hObject= createFile( $sPath, $rvhvOptions )`, `$hObject= createFile( $sPath, $svAccess )`, `$hObject= createFile( $sPath, $svAccess, $rvhvOptions )`, `$hObject= createFile( $sPath, $svAccess, $svShare )`, `$hObject= createFile( $sPath, $svAccess, $svShare, $rvhvOptions )`, `"q"`, `"r"`, `"w"`, `"k"`, `"t"`, `"n"`, `"c"`, `"e"`, `"kc"`, `"ke"`, `"tc"`, `"te"`, `"nc"`, `"ne"`, Flags => $uFlags, Attributes => $sAttributes, Security => $pSecurityAttributes, Model => $hModelFile, Access => $sAccess, Access => $uAccess, Create => $sCreate, Create => $uCreate, Share => $sShare, Share => $uShare, getLogicalDrives, `@roots= getLogicalDrives()`, CloseHandle, `CloseHandle( $hObject )`, CopyFile, `CopyFile( $sOldFileName, $sNewFileName, $bFailIfExists )`, CreateFile, `$hObject= CreateFile( $sPath, $uAccess, $uShare, $pSecAttr, $uCreate, $uFlags, $hModel )`, `"//./PhysicalDrive0"`, `"//./C:"`, `"//./A:"`, `"//./PIPE/PipeName"`, DefineDosDevice, `DefineDosDevice( $uFlags, $sDosDeviceName, $sTargetPath )`, `DDD_RAW_TARGET_PATH`, `DDD_REMOVE_DEFINITION`, `DDD_EXACT_MATCH_ON_REMOVE`, DeleteFile, `DeleteFile( $sFileName )`, DeviceIoControl, `DeviceIoControl( $hDevice, $uIoControlCode, $pInBuf, $lInBuf, $opOutBuf, $lOutBuf, $olRetBytes, $pOverlapped )`, FdGetOsFHandle, `$hNativeHandle= FdGetOsFHandle( $ivFd )`, fileConstant, `$value= fileConstant( $sConstantName )`, fileLastError, `$svError= fileLastError();`, `fileLastError( $uError );`, GetDriveType, `$uDriveType= GetDriveType( $sRootPath )`, `DRIVE_UNKNOWN`, `DRIVE_NO_ROOT_DIR`, `DRIVE_REMOVABLE`, `DRIVE_FIXED`, `DRIVE_REMOTE`, `DRIVE_CDROM`, `DRIVE_RAMDISK`, GetFileAttributes, `$uAttrs = GetFileAttributes( $sPath )`, `FILE_ATTRIBUTE_ARCHIVE`, `FILE_ATTRIBUTE_COMPRESSED`, `FILE_ATTRIBUTE_DEVICE`, `FILE_ATTRIBUTE_DIRECTORY`, `FILE_ATTRIBUTE_ENCRYPTED`, `FILE_ATTRIBUTE_HIDDEN`, `FILE_ATTRIBUTE_NORMAL`, `FILE_ATTRIBUTE_NOT_CONTENT_INDEXED`, `FILE_ATTRIBUTE_OFFLINE`, `FILE_ATTRIBUTE_READONLY`, `FILE_ATTRIBUTE_REPARSE_POINT`, `FILE_ATTRIBUTE_SPARSE_FILE`, `FILE_ATTRIBUTE_SYSTEM`, `FILE_ATTRIBUTE_TEMPORARY`, GetFileType, `$uFileType= GetFileType( $hFile )`, `FILE_TYPE_UNKNOWN`, `FILE_TYPE_DISK`, `FILE_TYPE_CHAR`, `FILE_TYPE_PIPE`, getFileSize, `$size= getFileSize( $hFile )`, GetFileSize, `$iSizeLow= GetFileSize($win32Handle, $iSizeHigh)`, GetOverlappedResult, `$bRetval= GetOverlappedResult( $win32Handle, $pOverlapped, $numBytesTransferred, $bWait )`, GetLogicalDrives, `$uDriveBits= GetLogicalDrives()`, GetLogicalDriveStrings, `$olOutLength= GetLogicalDriveStrings( $lBufSize, $osBuffer )`, GetHandleInformation, `GetHandleInformation( $hObject, $ouFlags )`, GetOsFHandle, `$hNativeHandle= GetOsFHandle( FILE )`, GetVolumeInformation, `GetVolumeInformation( $sRootPath, $osVolName, $lVolName, $ouSerialNum, $ouMaxNameLen, $ouFsFlags, $osFsType, $lFsType )`, `FS_CASE_IS_PRESERVED`, `FS_CASE_SENSITIVE`, `FS_UNICODE_STORED_ON_DISK`, `FS_PERSISTENT_ACLS`, `FS_FILE_COMPRESSION`, `FS_VOL_IS_COMPRESSED`, IsRecognizedPartition, `IsRecognizedPartition( $ivPartitionType )`, IsContainerPartition, `IsContainerPartition( $ivPartitionType )`, MoveFile, `MoveFile( $sOldName, $sNewName )`, MoveFileEx, `MoveFileEx( $sOldName, $sNewName, $uFlags )`, `MOVEFILE_REPLACE_EXISTING`, `MOVEFILE_COPY_ALLOWED`, `MOVEFILE_DELAY_UNTIL_REBOOT`, `MOVEFILE_WRITE_THROUGH`, OsFHandleOpen, `OsFHandleOpen( FILE, $hNativeHandle, $sMode )`, OsFHandleOpenFd, `$ivFD= OsFHandleOpenFd( $hNativeHandle, $uMode )`, QueryDosDevice, `$olTargetLen= QueryDosDevice( $sDosDeviceName, $osTargetPath, $lTargetBuf )`, ReadFile, `ReadFile( $hFile, $opBuffer, $lBytes, $olBytesRead, $pOverlapped )`, SetErrorMode, `$uOldMode= SetErrorMode( $uNewMode )`, `SEM_FAILCRITICALERRORS`, `SEM_NOALIGNMENTFAULTEXCEPT`, `SEM_NOGPFAULTERRORBOX`, `SEM_NOOPENFILEERRORBOX`, setFilePointer, `$uNewPos = setFilePointer( $hFile, $ivOffset, $uFromWhere )`, SetFilePointer, `$uNewPos = SetFilePointer( $hFile, $ivOffset, $ioivOffsetHigh, $uFromWhere )`, SetHandleInformation, `SetHandleInformation( $hObject, $uMask, $uFlags )`, WriteFile, `WriteFile( $hFile, $pBuffer, $lBytes, $ouBytesWritten, $pOverlapped )`, `":FuncA"`, `":FuncW"`, CopyFileW, `CopyFileW( $swOldFileName, $swNewFileName, $bFailIfExists )`, CreateFileW, `$hObject= CreateFileW( $swPath, $uAccess, $uShare, $pSecAttr, $uCreate, $uFlags, $hModel )`, DefineDosDeviceW, `DefineDosDeviceW( $uFlags, $swDosDeviceName, $swTargetPath )`, DeleteFileW, `DeleteFileW( $swFileName )`, GetDriveTypeW, `$uDriveType= GetDriveTypeW( $swRootPath )`, GetFileAttributesW, `$uAttrs= GetFileAttributesW( $swPath )`, GetLogicalDriveStringsW, `$olwOutLength= GetLogicalDriveStringsW( $lwBufSize, $oswBuffer )`, GetVolumeInformationW, `GetVolumeInformationW( $swRootPath, $oswVolName, $lwVolName, $ouSerialNum, $ouMaxNameLen, $ouFsFlags, $oswFsType, $lwFsType )`, MoveFileW, `MoveFileW( $swOldName, $swNewName )`, MoveFileExW, `MoveFileExW( $swOldName, $swNewName, $uFlags )`, QueryDosDeviceW, `$olwTargetLen= QueryDosDeviceW( $swDeviceName, $oswTargetPath, $lwTargetBuf )`, `":Misc"`, `":DDD_"`, `":DRIVE_"`, `":FILE_"`, `":FILE_ATTRIBUTE_"`, `":FILE_FLAG_"`, `":FILE_SHARE_"`, `":FILE_TYPE_"`, `":FS_"`, `":HANDLE_FLAG_"`, HANDLE_FLAG_INHERIT, HANDLE_FLAG_PROTECT_FROM_CLOSE, `":IOCTL_STORAGE_"`, `IOCTL_STORAGE_CHECK_VERIFY`, `IOCTL_STORAGE_MEDIA_REMOVAL`, `IOCTL_STORAGE_EJECT_MEDIA`, `IOCTL_STORAGE_LOAD_MEDIA`, `IOCTL_STORAGE_RESERVE`, `IOCTL_STORAGE_RELEASE`, `IOCTL_STORAGE_FIND_NEW_DEVICES`, `IOCTL_STORAGE_GET_MEDIA_TYPES`, `$ucCylsLow[$i]`, `$ivcCylsHigh[$i]`, `$uMediaType[$i]`, `$uTracksPerCyl[$i]`, `$uSectsPerTrack[$i]`, `$uBytesPerSect[$i]`, `":IOCTL_DISK_"`, `IOCTL_DISK_GET_DRIVE_GEOMETRY`, `$ucCylsLow`, `$ivcCylsHigh`, `$uMediaType`, `$uTracksPerCyl`, `$uSectsPerTrack`, `$uBytesPerSect`, `IOCTL_DISK_GET_PARTITION_INFO`, `$uStartLow` and `$ivStartHigh`, `$ucHiddenSects`, `$uPartitionSeqNumber`, `$uPartitionType`, `$bActive`, `$bRecognized`, `$bToRewrite`, `IOCTL_DISK_SET_PARTITION_INFO`, `IOCTL_DISK_GET_DRIVE_LAYOUT`, `$cPartitions`, `$uDiskSignature`, `IOCTL_DISK_GET_MEDIA_TYPES`, `IOCTL_DISK_SET_DRIVE_LAYOUT`, `IOCTL_DISK_VERIFY`, `$uStartOffsetLow` and `$ivStartOffsetHigh`, `$uLength`, `IOCTL_DISK_FORMAT_TRACKS`, `IOCTL_DISK_REASSIGN_BLOCKS`, `IOCTL_DISK_PERFORMANCE`, `IOCTL_DISK_IS_WRITABLE`, `IOCTL_DISK_LOGGING`, DISK_LOGGING_START, DISK_LOGGING_STOP, DISK_LOGGING_DUMP, DISK_LOGGING_BINNING, `IOCTL_DISK_FORMAT_TRACKS_EX`, `IOCTL_DISK_HISTOGRAM_STRUCTURE`, `IOCTL_DISK_HISTOGRAM_DATA`, `IOCTL_DISK_HISTOGRAM_RESET`, `IOCTL_DISK_REQUEST_STRUCTURE`, `IOCTL_DISK_REQUEST_DATA`, `":FSCTL_"`, `FSCTL_SET_REPARSE_POINT`, `FSCTL_GET_REPARSE_POINT`, `FSCTL_DELETE_REPARSE_POINT`, `":GENERIC_"`, `":MEDIA_TYPE"`, `Unknown`, `F5_1Pt2_512`, `F3_1Pt44_512`, `F3_2Pt88_512`, `F3_20Pt8_512`, `F3_720_512`, `F5_360_512`, `F5_320_512`, `F5_320_1024`, `F5_180_512`, `F5_160_512`, `RemovableMedia`, `FixedMedia`, `F3_120M_512`, `":MOVEFILE_"`, `":SECURITY_"`, `":SEM_"`, `":PARTITION_"`, `":STD_HANDLE_"`, `":ALL"`

BUGS
AUTHOR
SEE ALSO

## Win32CORE - Win32 CORE function stubs

DESCRIPTION
HISTORY

# 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.

perltoc - perl documentation table of contents