(GPL-1.0-or-later or Artistic-1.0-perl) and (GPL-2.0-or-later or Artistic-1.0-perl) and MIT and UCD and Public Domain and BSD
(GPL-1.0-or-later or Artistic-1.0-perl) and MIT and UCD
Module that allows you to declare real exception classes in Perl
Exception::Class allows you to declare exception hierarchies in your modules in a "Java-esque" manner.
acquired package info from repodata DB: repodata/69e709f4d2852d98f12867a74015d19384fe2727ff670fd70178cdde80b1e77e-primary.sqlite.bz2
The Carp routines are useful in your own modules because they act like die() or warn(), but with a message which is more likely to be useful to a user of your module. In the case of cluck, confess, and longmess that context is a summary of every call in the call-stack. For a shorter message you can use carp or croak which report the error as being from where your module was called. There is no guarantee that that is where the error was, but it is a good educated guess.
Automatically give your module the ability to have plugins
Provides a simple but, hopefully, extensible way of having 'plugins' for your module. obviously this isn't going to be the be all and end all of solutions but is works for me Essentially all it does is export a method into your namespace that looks. through a search path for .pm files and turn those into class names. Optionally it instantiates those classes for you.
A highly capable, feature-rich programming language
Perl 5 is a highly capable, feature-rich programming language with over 30 years of development. Perl 5 runs on over 100 platforms from portables to mainframes and is suitable for both rapid prototyping and large scale development projects.
Critique Perl source code for best-practices
Perl::Critic is an extensible framework for creating and applying coding standards to Perl source code. Essentially, it is a static source code analysis engine. Perl::Critic is distributed with a number of Perl::Critic::Policy modules that attempt to enforce various coding guidelines. Most Policy modules are based on Damian Conway's book Perl Best Practices. However, Perl::Critic is not limited to PBP and will even support Policies that contradict Conway. You can enable, disable, and customize those Polices through the Perl::Critic interface. You can also create new Policy modules that suit your own tastes.
This package is the shared library for perl.
Represent a regular expression of some sort
The purpose of the PPIx-Regexp package is to parse regular expressions in a manner similar to the way the PPI package parses Perl. This class forms the root of the parse tree, playing a role similar to PPI::Document.
A spell checker and morphological analyzer library
Hunspell is a free spell checker and morphological analyzer library and command-line tool, licensed under LGPL/GPL/MPL tri-license.
Perl implementation of the which utility as an API
File::Which finds the full or relative paths to executable programs on the system. This is normally the function of which utility. which is typically implemented as either a program or a built in shell command. On some platforms, such as Microsoft Windows it is not provided as part of the core operating system. This module provides a consistent API to this functionality regardless of the underlying platform. The focus of this module is correctness and portability. As a consequence platforms where the current directory is implicitly part of the search path such as Microsoft Windows will find executables in the current directory, whereas on platforms such as UNIX where this is not the case executables in the current directory will only be found if the current directory is explicitly added to the path. If you need a portable which on the command line in an environment that does not provide it, install App::pwhich which provides a command line interface to this API.
Basic perl modules for handling Plain Old Documentation (POD)
This software distribution contains the packages for using Perl5 POD (Plain Old Documentation). See the "perlpod" and "perlsyn" manual pages from your Perl5 distribution for more information about POD.
Parse Perl string literals and string-literal-like things
This Perl class parses Perl string literals and things that are reasonably like string literals. Its real reason for being is to find interpolated variables for Perl::Critic policies and similar code.
Tools for working with directory and file names.
Color screen output using ANSI escape sequences
This Perl module is a simple and convenient interface to the ANSI terminal escape sequences for color (from ECMA-48, also included in ISO 6429). The color sequences are provided in two forms, either as constants for each color or via a function that takes the names of colors and returns the appropriate escape codes or wraps them around the provided text. The non-color text style codes from ANSI X3.64 (bold, dark, underline, and reverse, for example), which were also included in ECMA-48 and ISO 6429, are also supported. Also supported are the extended colors used for sixteen-color and 256-color emulators.
Version objects were added to Perl in 5.10. This module implements version objects for older version of Perl and provides the version object API for all versions of Perl. All previous releases before 0.74 are deprecated and should not be used due to incompatible API changes. Version 0.77 introduces the new 'parse' and 'declare' methods to standardize usage. You are strongly urged to set 0.77 as a minimum in your code, e.g. use version 0.77; # even for Perl v.5.10.0
This is a collection of functions for dealing with PPI objects, many of which originated in Perl::Critic. They are organized into modules by the kind of PPI class they relate to, by replacing the "PPI" at the front of the module name with "PPIx::Utilities", e.g. functionality related to PPI::Nodes is in PPIx::Utilities::Node.
Emulate file interface for in-core strings
The IO-String provides the IO::File interface for in-core strings. An IO::String object can be attached to a string, and makes it just like normal file for reading and writing.
Implements default import method for modules
The Exporter module implements an import method which allows a module to export functions and variables to its users' name spaces. Many modules use Exporter rather than implementing their own import method because Exporter provides a highly flexible interface, with an implementation optimized for the common case.
Lists of reserved barewords and symbol names
Keyword provides an array of several exportable keywords
Extended processing of command line options
Module Getopt::Long implements an extended getopt function called GetOptions(). This function implements the POSIX standard for command line options, with GNU extensions, while still capable of handling the traditional one-letter options.
Pod::Spell is a Pod formatter whose output is good for spell-checking. Pod::Spell rather like Pod::Text, except that it doesn't put much effort into actual formatting, and it suppresses things that look like Perl symbols or Perl jargon (so that your spell-checking program won't complain about mystery words like "$thing" or "Foo::Bar" or "hashref").
This module provides a convenient way to create directories of arbitrary depth and to delete an entire directory subtree from the filesystem.
Read/Write .ini style files with as little code as possible
Config::Tiny is a Perl class to read and write .ini style configuration files with as little code as possible, reducing load time and memory overhead.
Print a usage message from embedded pod documentation
Pod2usage will print a usage message for the invoking script (using its embedded pod documentation) and then exit the script with the desired exit status. The usage message printed may have any one of three levels of "verboseness": If the verbose level is 0, then only a synopsis is printed. If the verbose level is 1, then the synopsis is printed along with a description (if present) of the command line options and arguments. If the verbose level is 2, then the entire manual page is printed.
Common Scalar and List utility subroutines
This package contains a selection of subroutines that people have expressed would be nice to have in the perl core, but the usage would not really be high enough to warrant the use of a keyword, and the size so small such that being individual extensions would be wasteful.
Sprintf-like string formatting capabilities with arbitrary format definitions
String::Format lets you define arbitrary printf-like format sequences to be expanded. This module would be most useful in configuration files and reporting tools, where the results of a query need to be formatted in a particular way. It was inspired by mutt's index_format and related directives (see <URL:http://www.mutt.org/doc/manual/manual- 6.html#index_format>).
Facility for creating read-only scalars, arrays, hashes
This is a facility for creating non-modifiable variables. This is useful for configuration files, headers, etc. It can also be useful as a development and debugging tool for catching updates to variables that should not be changed.
Parse, analyze and manipulate Perl (without perl).
List::MoreUtils provides some trivial but commonly needed functionality on lists which is not going to go into List::Util. All of the below functions are implementable in only a couple of lines of Perl code. Using the functions from this module however should give slightly better performance as everything is implemented in C. The pure-Perl implementation of these functions only serves as a fallback in case the C portions of this module couldn't be compiled on this machine.
Return name and handle of a temporary file safely
File::Temp can be used to create and open temporary files in a safe way. There is both a function interface and an object-oriented interface. The File::Temp constructor or the tempfile() function can be used to return the name and the open file handle of a temporary file. The tempdir() function can be used to create a temporary directory. The security aspect of temporary file creation is emphasized such that a filehandle and filename are returned together. This helps guarantee that a race condition can not occur where the temporary file is created by another process between checking for the existence of the file and its opening. Additional security levels are provided to check, for example, that the sticky bit is set on world writable directories. See "safe_level" for more information. For compatibility with popular C library functions, Perl implementations of the mkstemp() family of functions are provided. These are, mkstemp(), mkstemps(), mkdtemp() and mktemp(). Additionally, implementations of the standard POSIX tmpnam() and tmpfile() functions are provided if required. Implementations of mktemp(), tmpnam(), and tempnam() are provided, but should be used with caution since they return only a filename that was valid when function was called, so cannot guarantee that the file will not exist by the time the caller opens the filename. Filehandles returned by these functions support the seekable methods.
Parse text into an array of tokens or array of arrays
The &nested_quotewords() and &quotewords() functions accept a delimiter (which can be a regular expression) and a list of lines and then breaks those lines up into a list of words ignoring delimiters that appear inside quotes. &quotewords() returns all of the tokens in a single long list, while &nested_quotewords() returns a list of token lists corresponding to the elements of @lines. &parse_line() does tokenizing on a single string. The &*quotewords() functions simply call &parse_line(), so if you're only splitting one line you can call &parse_line() directly and save a function call. The $keep argument is a boolean flag. If true, then the tokens are split on the specified delimiter, but all other characters (including quotes and backslashes) are kept in the tokens. If $keep is false then the &*quotewords() functions remove all quotes and backslashes that are not themselves backslash-escaped or inside of single quotes (i.e., &quotewords() tries to interpret these characters just like the Bourne shell). NB: these semantics are significantly different from the original version of this module shipped with Perl 5.000 through 5.004. As an additional feature, $keep may be the keyword "delimiters" which causes the functions to preserve the delimiters in each string as tokens in the token lists, in addition to preserving quote and backslash characters.
This module makes the functionality of the perltidy utility available to perl scripts. Any or all of the input parameters may be omitted, in which case the @ARGV array will be used to provide input parameters as described in the perltidy(1) man page. For example, the perltidy script is basically just this: use Perl::Tidy; Perl::Tidy::perltidy();